Home

Awesome

LLM Agents

Small library to build agents which are controlled by large language models (LLMs) which is heavily inspired by <a href="https://github.com/hwchase17/langchain/" target="_blank">langchain</a>.

The goal was to get a better grasp of how such an agent works and understand it all in very few lines of code.

Langchain is great, but it already has a few more files and abstraction layers, so I thought it would be nice to build the most important parts of a simple agent from scratch.

Some more infos are in <a href="https://news.ycombinator.com/item?id=35446171">this Hacker News discussion from April 5th 2023</a> and the <a href="https://www.paepper.com/blog/posts/intelligent-agents-guided-by-llms/">related blog post</a>.

How it works

The agent works like this:

For more details on how it works, check out <a href="https://www.paepper.com/blog/posts/intelligent-agents-guided-by-llms/">this blog post</a>

How to use it

You can install this libaray locally by running: pip install -e . inside it's directory after cloning it.

You also need to provide the following env variables:

You can simply export them in bash like: export OPENAI_API_KEY='sh-lsdf....'

Then you can run the script python run_agent.py and ask your question.

To construct your own agent do it like this:

from llm_agents import Agent, ChatLLM, PythonREPLTool, HackerNewsSearchTool, SerpAPITool

agent = Agent(llm=ChatLLM(), tools=[PythonREPLTool(), SerpAPITool(), HackerNewsSearchTool()])
result = agent.run("Your question to the agent")

print(f"Final answer is {result}")

Of course, you can also build your custom tools or omit tools, for exmaple if you don't want to create a SERPAPI key.