simonmesmith / agentflow Goto Github PK
View Code? Open in Web Editor NEWComplex LLM Workflows from Simple JSON.
License: MIT License
Complex LLM Workflows from Simple JSON.
License: MIT License
To create a PowerPoint presentation from provided data, likely in the form of JSON.
It's hard to test function execution without actually using an LLM, which we don't want to do for a few reasons (nondeterminism, use of a third-party API that can go down, pinging that API every time we run a test, etc.). We should expand test_flow.py to test that:
And maybe some other stuff, too.
Create a function called call_workflow or something like that.
Move print statements out of flow.Flow.run() and into run.main().
Have flow.Flow.run() return a status of True if the flow completes successfully. Then we can just retrieve the results from flow.output.output_path.
For example, when GPT refers to an image, it sometimes does <img src="sandbox:image_name.png">
. I think it does this because it's trained to do so for environments like ChatGPT. This causes issues when it does things like write HTML pointing to images at nonexistent locations.
Let users decide how they want to see things progress. For example:
This is the main flow and we need to have tests to make sure it works.
We're going to need to mock a lot of stuff for that, I think.
Also, instead of creating flows in test_flow.py, we need to have test data in the tests folder, like:
Create different ways of triggering events, such as from an inbound message, or a schedule.
Include function information in LLM calls, and handle function execution by passing results back to the calling LLM.
And give users the ability to set the logging level with arguments when running a flow.
Saw your ycombinator post, thought I'd make you aware of a similar effort:
https://github.com/llm-workflow-engine/llm-workflow-engine has linear workflows (via Ansible integration), conversation threads, templating, provider/model presets, and OpenAI functions support.
I built it for the same reasons listed in the OP -- really seemed like a simple linear workflow manager would be incredibly useful.
This could open a lot of windows for creative applications if it's available for android.
Input:
If length is greater than X, use gpt-3.5 16K token model. Otherwise, use base gpt-3.5 model.
For summary length, should it be a string or integer? Like, number_of_sentences=X
? Or length="a tweet"
?
For example, maybe in .env, they can specify gpt-3.5-turbo as the default model instead of gpt-4.
run.py
from rootrun.py
functionality to agentflow/cli.pycli.main
into agentflow/__init__.py
so users can run the CLI with python -m agentflow
ui
folder in the rootpython -m ui.run
requirements
as needed, e.g. with FastAPI and Uvicornroot/tests
to root/agentflow/tests
for agentflow-specific tests (update file references accordingly, including in README)It will enable developing the next gen offline AI Assistant for mobile with transparency and customizable complex workflows.
To address situations where the API is having issues.
And incorporate it into the main program flow.
Love the repository. Wishing more stars for this repo.
I would very much like to see interactive workflows like paying a credit card/talking to the bank agent to complete a transaction. This would be a cool use of the your design
Also, remove OpenAI API secret from GitHub, along with removing setting this environment variable in the GitHub Actions testing workflow.
The new OpenAI Python library introduces several breaking changes. If you want to use Agentflow without updating to the latest library, you'll need to pin it to a library that they made available before these recent changes. If I (or anyone else) has time, we might be able to update the repo, but it's hard to keep up with the pace of change in generative AI!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.