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 # 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__": 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!") print("hello world!")

View File

@ -31,7 +31,7 @@ from typing import Dict
from dbgpt._private.pydantic import BaseModel, Field from dbgpt._private.pydantic import BaseModel, Field
from dbgpt.core.awel import DAG, HttpTrigger, MapOperator from dbgpt.core.awel import DAG, HttpTrigger, MapOperator
from dbgpt.model.proxy import OpenAILLMClient 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 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
}