Use Composio to get an array of tools with your LlamaIndex agent.
Reason this release was yanked:
Composio toolset directory
Project description
🦙 Using Composio With LlamaIndex
Integrate Composio with llamaindex agents to allow them to interact seamlessly with external apps & data sources, enhancing their functionality and reach.
Goal
- Star a repository on GitHub using natural language commands through a llamaindex Agent.
Installation and Setup
Ensure you have the necessary packages installed and connect your GitHub account to allow your agents to utilize GitHub functionalities.
# Install Composio llamaindex package
pip install composio-llamaindex
# Connect your GitHub account
composio-cli add github
# View available applications you can connect with
composio-cli show-apps
Usage Steps
1. Import Base Packages
Prepare your environment by initializing necessary imports from llamaindex and setting up your agent.
from llama_index.llms.openai import OpenAI
from llama_index.core.llms import ChatMessage
from llama_index.core.agent import FunctionCallingAgentWorker
import dotenv
from llama_index.core.tools import FunctionTool
# Load environment variables from .env
dotenv.load_dotenv()
llm = OpenAI(model="gpt-4-turbo")
2. Fetch GitHub llamaindex Tools via Composio
Access GitHub tools provided by Composio for llamaindex.
from composio_llamaindex import App, Action, ComposioToolSet
# Get All the tools
composio_toolset = ComposioToolSet()
tools = composio_toolset.get_actions(
actions=[Action.GITHUB_STAR_A_REPOSITORY_FOR_THE_AUTHENTICATED_USER]
)
print(tools)
3. Prepare the Agent
Configure the agent to perform tasks such as starring a repository on GitHub.
prefix_messages = [
ChatMessage(
role="system",
content=(
"You are now a integration agent, and what ever you are requested, you will try to execute utilizing your toools."
),
)
]
agent = FunctionCallingAgentWorker(
tools=tools,
llm=llm,
prefix_messages=prefix_messages,
max_function_calls=10,
allow_parallel_tool_calls=False,
verbose=True,
).as_agent()
4. Check Response
Validate the execution and response from the agent to ensure the task was completed successfully.
response = agent.chat("Hello! I would like to star a repo composiohq/composio on GitHub")
print("Response:", response)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for composio_llamaindex-0.5.7.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7f9ca7d20e8c921b9f6f7d91b41d75c25c1c4db9ae00ee7506c362e196b189ca |
|
MD5 | 889c63980a2265a4264ca497fabfb3b4 |
|
BLAKE2b-256 | a8d5d2fed8dc22fdfe65f4133b561e2075f872cf9eaf1eadc10ab862900e083f |
Hashes for composio_llamaindex-0.5.7-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 11c5a81b91833e09a3aab909bb23c6cdacc2ebb600875ed03eae67c1facd4446 |
|
MD5 | edf4664a2f2af423d0f59b9b3c2331ef |
|
BLAKE2b-256 | 7f1e0388c024df28ea9de3ef8600eac65f876a3b80b686a3be30fbfcac194b6f |