fix: agents & awel examples

This commit is contained in:
csunny 2024-12-27 17:48:41 +08:00
parent 64d9e5e424
commit d626d5801e
4 changed files with 30 additions and 254 deletions

View File

@ -1,3 +1,32 @@
# TODO add example run code here
import asyncio
# Agents examples
from .agents.auto_plan_agent_dialogue_example import main as auto_plan_main
from .agents.awel_layout_agents_chat_examples import main as awel_layout_main
from .agents.custom_tool_agent_example import main as custom_tool_main
from .agents.plugin_agent_dialogue_example import main as plugin_main
from .agents.retrieve_summary_agent_dialogue_example import (
main as retrieve_summary_main,
)
from .agents.sandbox_code_agent_example import main as sandbox_code_main
from .agents.single_agent_dialogue_example import main as single_agent_main
from .agents.sql_agent_dialogue_example import main as sql_main
if __name__ == "__main__":
# Run the examples
## Agent examples
asyncio.run(auto_plan_main())
asyncio.run(awel_layout_main())
asyncio.run(custom_tool_main())
asyncio.run(retrieve_summary_main())
asyncio.run(plugin_main())
asyncio.run(sandbox_code_main())
asyncio.run(single_agent_main())
asyncio.run(sql_main())
## awel examples
print("hello world!")

View File

@ -31,7 +31,7 @@ from typing import Dict
from dbgpt._private.pydantic import BaseModel, Field
from dbgpt.core.awel import DAG, HttpTrigger, MapOperator
from dbgpt.model.proxy import OpenAILLMClient
from dbgpt.rag.knowledge import KnowledgeType
from dbgpt.rag.knowledge.base import KnowledgeType
from dbgpt.rag.operators import KnowledgeOperator, SummaryAssemblerOperator

View File

@ -1,118 +0,0 @@
{
"cells": [
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2024-04-10T04:38:14.228948Z",
"start_time": "2024-04-10T04:38:14.224972Z"
}
},
"source": [
"import nest_asyncio\n",
"from dbgpt.agent import (\n",
" AgentContext,\n",
" GptsMemory,\n",
" LLMConfig,\n",
" ResourceLoader,\n",
" UserProxyAgent,\n",
")\n",
"from dbgpt.agent.expand.code_assistant_agent import CodeAssistantAgent\n",
"from dbgpt.agent.plan import AutoPlanChatManager\n",
"from dbgpt.model.proxy import OpenAILLMClient\n",
"\n",
"nest_asyncio.apply()"
],
"execution_count": 7,
"outputs": []
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"is_executing": true
},
"source": [
"# Set your api key and api base url\n",
"# os.environ[\"OPENAI_API_KEY\"] = \"Your API\"\n",
"# os.environ[\"OPENAI_API_BASE\"] = \"https://api.openai.com/v1\""
],
"outputs": []
},
{
"cell_type": "code",
"metadata": {
"ExecuteTime": {
"end_time": "2024-04-10T04:19:47.838081Z",
"start_time": "2024-04-10T04:17:54.465616Z"
}
},
"source": [
"llm_client = OpenAILLMClient(model_alias=\"gpt-4\")\n",
"context: AgentContext = AgentContext(conv_id=\"test456\", gpts_app_name=\"代码分析助手\")\n",
"\n",
"default_memory = GptsMemory()\n",
"\n",
"resource_loader = ResourceLoader()\n",
"\n",
"coder = (\n",
" await CodeAssistantAgent()\n",
" .bind(context)\n",
" .bind(LLMConfig(llm_client=llm_client))\n",
" .bind(default_memory)\n",
" .bind(resource_loader)\n",
" .build()\n",
")\n",
"\n",
"manager = (\n",
" await AutoPlanChatManager()\n",
" .bind(context)\n",
" .bind(default_memory)\n",
" .bind(LLMConfig(llm_client=llm_client))\n",
" .build()\n",
")\n",
"manager.hire([coder])\n",
"\n",
"user_proxy = await UserProxyAgent().bind(context).bind(default_memory).build()\n",
"\n",
"\n",
"await user_proxy.initiate_chat(\n",
" recipient=manager,\n",
" reviewer=user_proxy,\n",
" message=\"Obtain simple information about issues in the repository 'eosphoros-ai/DB-GPT' in the past three days and analyze the data. Create a Markdown table grouped by day and status.\",\n",
" # message=\"Find papers on gpt-4 in the past three weeks on arxiv, and organize their titles, authors, and links into a markdown table\",\n",
" # message=\"find papers on LLM applications from arxiv in the last month, create a markdown table of different domains.\",\n",
")"
],
"execution_count": 4,
"outputs": []
}
],
"metadata": {
"kernelspec": {
"display_name": "dbgpt_env",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.10.13"
},
"orig_nbformat": 4,
"vscode": {
"interpreter": {
"hash": "f8b6b0e04f284afd2fbb5e4163e7d03bbdc845eaeb6e8c78fae04fce6b51dae6"
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}

View File

@ -1,135 +0,0 @@
{
"cells": [
{
"cell_type": "code",
"id": "6de2e0bb",
"metadata": {
"ExecuteTime": {
"end_time": "2024-04-10T04:37:21.832993Z",
"start_time": "2024-04-10T04:37:21.828221Z"
}
},
"source": [
"import os\n",
"import nest_asyncio\n",
"from dbgpt.agent import (\n",
" AgentContext,\n",
" AgentResource,\n",
" GptsMemory,\n",
" LLMConfig,\n",
" ResourceLoader,\n",
" ResourceType,\n",
" UserProxyAgent,\n",
")\n",
"from dbgpt.agent.expand.plugin_assistant_agent import PluginAssistantAgent\n",
"from dbgpt.agent.expand.summary_assistant_agent import SummaryAssistantAgent\n",
"from dbgpt.agent.plan import WrappedAWELLayoutManager\n",
"from dbgpt.agent.resource import PluginFileLoadClient\n",
"from dbgpt.configs.model_config import ROOT_PATH\n",
"from dbgpt.model.proxy import OpenAILLMClient\n",
"\n",
"nest_asyncio.apply()\n",
"test_plugin_dir = os.path.join(ROOT_PATH, \"examples/test_files/plugins\")"
],
"execution_count": 11,
"outputs": []
},
{
"cell_type": "code",
"id": "437b9c40",
"metadata": {
"ExecuteTime": {
"end_time": "2024-04-10T04:37:27.592117Z",
"start_time": "2024-04-10T04:37:23.569538Z"
}
},
"source": [
"# os.environ['OPENAI_API_KEY']=\"sk-x\"\n",
"# os.environ['OPENAI_API_BASE']=\"https://proxy_url/v1\"\n",
"# os.environ['SEARCH_ENGINE']=\"baidu\"\n",
"# os.environ['BAIDU_COOKIE']=\"\"\"your baidu cookie\"\"\"\n",
"\n",
"llm_client = OpenAILLMClient(model_alias=\"gpt-3.5-turbo\")\n",
"context: AgentContext = AgentContext(conv_id=\"test456\", gpts_app_name=\"信息析助手\")\n",
"\n",
"default_memory = GptsMemory()\n",
"\n",
"resource_loader = ResourceLoader()\n",
"plugin_file_loader = PluginFileLoadClient()\n",
"resource_loader.register_resource_api(plugin_file_loader)\n",
"\n",
"plugin_resource = AgentResource(\n",
" type=ResourceType.Plugin,\n",
" name=\"test\",\n",
" value=test_plugin_dir,\n",
")\n",
"\n",
"tool_engineer = (\n",
" await PluginAssistantAgent()\n",
" .bind(context)\n",
" .bind(LLMConfig(llm_client=llm_client))\n",
" .bind(default_memory)\n",
" .bind([plugin_resource])\n",
" .bind(resource_loader)\n",
" .build()\n",
")\n",
"summarizer = (\n",
" await SummaryAssistantAgent()\n",
" .bind(context)\n",
" .bind(default_memory)\n",
" .bind(LLMConfig(llm_client=llm_client))\n",
" .build()\n",
")\n",
"\n",
"manager = (\n",
" await WrappedAWELLayoutManager()\n",
" .bind(context)\n",
" .bind(default_memory)\n",
" .bind(LLMConfig(llm_client=llm_client))\n",
" .build()\n",
")\n",
"manager.hire([tool_engineer, summarizer])\n",
"\n",
"user_proxy = await UserProxyAgent().bind(context).bind(default_memory).build()\n",
"\n",
"await user_proxy.initiate_chat(\n",
" recipient=manager,\n",
" reviewer=user_proxy,\n",
" message=\"查询成都今天天气\",\n",
" # message=\"查询今天的最新热点财经新闻\",\n",
")"
],
"execution_count": 12,
"outputs": []
},
{
"cell_type": "code",
"execution_count": null,
"id": "7ded4107",
"metadata": {},
"source": [],
"outputs": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.10.13"
}
},
"nbformat": 4,
"nbformat_minor": 5
}