DB-GPT/examples/agents/retrieve_summary_agent_dialogue_example.py
2024-05-07 09:45:26 +08:00

66 lines
2.0 KiB
Python

"""Agents: single agents about CodeAssistantAgent?
Examples:
Execute the following command in the terminal:
Set env params.
.. code-block:: shell
export OPENAI_API_KEY=sk-xx
export OPENAI_API_BASE=https://xx:80/v1
run example.
..code-block:: shell
python examples/agents/retrieve_summary_agent_dialogue_example.py
"""
import asyncio
import os
from dbgpt.agent import AgentContext, AgentMemory, LLMConfig, UserProxyAgent
from dbgpt.agent.expand.retrieve_summary_assistant_agent import (
RetrieveSummaryAssistantAgent,
)
from dbgpt.configs.model_config import ROOT_PATH
async def summary_example_with_success():
from dbgpt.model.proxy import OpenAILLMClient
llm_client = OpenAILLMClient(model_alias="gpt-3.5-turbo-16k")
context: AgentContext = AgentContext(conv_id="retrieve_summarize")
agent_memory = AgentMemory()
summarizer = (
await RetrieveSummaryAssistantAgent()
.bind(context)
.bind(LLMConfig(llm_client=llm_client))
.bind(agent_memory)
.build()
)
user_proxy = UserProxyAgent(memory=agent_memory, agent_context=context)
paths_urls = [
os.path.join(ROOT_PATH, "examples/agents/example_files/Nuclear_power.pdf"),
os.path.join(ROOT_PATH, "examples/agents/example_files/Taylor_Swift.pdf"),
"https://en.wikipedia.org/wiki/Modern_Family",
"https://en.wikipedia.org/wiki/Chernobyl_disaster",
]
await user_proxy.initiate_chat(
recipient=summarizer,
reviewer=user_proxy,
message=f"I want to summarize advantages of Nuclear Power. You can refer the "
f"following file paths and URLs: {paths_urls}",
)
# dbgpt-vis message infos
print(await agent_memory.gpts_memory.one_chat_completions("retrieve_summarize"))
if __name__ == "__main__":
asyncio.run(summary_example_with_success())
print(
"\033[92m=======================The Summary Assistant with Successful Results Ended==================\n\n\033[91m"
)