mirror of
https://github.com/csunny/DB-GPT.git
synced 2025-08-31 16:39:48 +00:00
fix(docs): update doc example code to work (#2624)
Co-authored-by: alan.cl <alan.cl@antgroup.com>
This commit is contained in:
@@ -26,7 +26,7 @@ context: AgentContext = AgentContext(
|
||||
)
|
||||
# Create an agent memory, default memory is ShortTermMemory
|
||||
agent_memory: AgentMemory = AgentMemory()
|
||||
|
||||
agent_memory.gpts_memory.init(conv_id="test123")
|
||||
|
||||
system_prompt_template = """\
|
||||
You are a {{ role }}, {% if name %}named {{ name }}, {% endif %}your goal is {{ goal }}.
|
||||
|
@@ -10,7 +10,7 @@ summarizer.
|
||||
Install the required packages by running the following command:
|
||||
|
||||
```bash
|
||||
pip install "dbgpt[agent]>=0.5.6rc1" -U
|
||||
pip install "dbgpt[agent,simple_framework]>=0.7.0" "dbgpt_ext>=0.7.0" -U
|
||||
pip install openai
|
||||
```
|
||||
|
||||
@@ -286,8 +286,8 @@ class SummaryActionInput(BaseModel):
|
||||
)
|
||||
|
||||
class SummaryAction(Action[SummaryActionInput]):
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
def __init__(self, **kwargs):
|
||||
super().__init__(**kwargs)
|
||||
|
||||
@property
|
||||
def resource_need(self) -> Optional[ResourceType]:
|
||||
@@ -371,9 +371,9 @@ class MySummarizerAgent(ConversableAgent):
|
||||
### Action Extended Parameter Processing
|
||||
|
||||
```python
|
||||
from typing import Optional, Dict, Any
|
||||
from typing import Optional, Dict, Any, List
|
||||
from pydantic import BaseModel
|
||||
from dbgpt.agent import Action, ActionOutput, AgentResource, ConversableAgent
|
||||
from dbgpt.agent import Agent, Action, AgentMessage, ActionOutput, AgentResource, ConversableAgent
|
||||
|
||||
|
||||
class SummaryActionInput(BaseModel):
|
||||
@@ -399,7 +399,13 @@ class MySummarizerAgent(ConversableAgent):
|
||||
super().__init__(**kwargs)
|
||||
self._init_actions([SummaryAction])
|
||||
|
||||
def prepare_act_param(self) -> Dict[str, Any]:
|
||||
def prepare_act_param(
|
||||
self,
|
||||
received_message: Optional[AgentMessage],
|
||||
sender: Agent,
|
||||
rely_messages: Optional[List[AgentMessage]] = None,
|
||||
**kwargs,
|
||||
) -> Dict[str, Any]:
|
||||
return {"action_extra_param_key": "this is extra param"}
|
||||
```
|
||||
|
||||
@@ -410,6 +416,7 @@ After the custom agent is created, you can use it in the following way:
|
||||
```python
|
||||
|
||||
import asyncio
|
||||
import os
|
||||
|
||||
from dbgpt.agent import AgentContext, ConversableAgent, AgentMemory, LLMConfig, UserProxyAgent
|
||||
from dbgpt.model.proxy import OpenAILLMClient
|
||||
@@ -418,10 +425,15 @@ class MySummarizerAgent(ConversableAgent):
|
||||
...
|
||||
|
||||
async def main():
|
||||
llm_client = OpenAILLMClient(model_alias="gpt-3.5-turbo")
|
||||
llm_client = OpenAILLMClient(
|
||||
model_alias="gpt-3.5-turbo", # or other models, eg. "gpt-4o"
|
||||
api_base=os.getenv("OPENAI_API_BASE"),
|
||||
api_key=os.getenv("OPENAI_API_KEY"),
|
||||
)
|
||||
context: AgentContext = AgentContext(conv_id="summarize")
|
||||
|
||||
agent_memory: AgentMemory = AgentMemory()
|
||||
agent_memory.gpts_memory.init(conv_id="summarize")
|
||||
|
||||
summarizer = (
|
||||
await MySummarizerAgent()
|
||||
@@ -457,7 +469,7 @@ async def main():
|
||||
Nuclear electric rocket
|
||||
""",
|
||||
)
|
||||
print(await agent_memory.gpts_memory.one_chat_completions("summarize"))
|
||||
print(await agent_memory.gpts_memory.app_link_chat_message("summarize"))
|
||||
|
||||
if __name__ == "__main__":
|
||||
asyncio.run(main())
|
||||
@@ -467,9 +479,11 @@ Full code as follows:
|
||||
|
||||
```python
|
||||
import asyncio
|
||||
from typing import Any, Dict, Optional, Tuple
|
||||
import os
|
||||
from typing import Any, Dict, Optional, Tuple, List
|
||||
|
||||
from dbgpt.agent import (
|
||||
Agent,
|
||||
Action,
|
||||
ActionOutput,
|
||||
AgentContext,
|
||||
@@ -548,7 +562,13 @@ class MySummarizerAgent(ConversableAgent):
|
||||
reply_message.context = {"not_related_message": NOT_RELATED_MESSAGE}
|
||||
return reply_message
|
||||
|
||||
def prepare_act_param(self) -> Dict[str, Any]:
|
||||
def prepare_act_param(
|
||||
self,
|
||||
received_message: Optional[AgentMessage],
|
||||
sender: Agent,
|
||||
rely_messages: Optional[List[AgentMessage]] = None,
|
||||
**kwargs,
|
||||
) -> Dict[str, Any]:
|
||||
return {"action_extra_param_key": "this is extra param"}
|
||||
|
||||
async def correctness_check(
|
||||
@@ -558,7 +578,7 @@ class MySummarizerAgent(ConversableAgent):
|
||||
action_report = message.action_report
|
||||
task_result = ""
|
||||
if action_report:
|
||||
task_result = action_report.get("content", "")
|
||||
task_result = action_report.content
|
||||
|
||||
check_result, model = await self.thinking(
|
||||
messages=[
|
||||
@@ -606,8 +626,8 @@ class SummaryActionInput(BaseModel):
|
||||
|
||||
|
||||
class SummaryAction(Action[SummaryActionInput]):
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
def __init__(self, **kwargs):
|
||||
super().__init__(**kwargs)
|
||||
|
||||
@property
|
||||
def resource_need(self) -> Optional[ResourceType]:
|
||||
@@ -671,10 +691,15 @@ class SummaryAction(Action[SummaryActionInput]):
|
||||
|
||||
|
||||
async def main():
|
||||
llm_client = OpenAILLMClient(model_alias="gpt-3.5-turbo")
|
||||
llm_client = OpenAILLMClient(
|
||||
model_alias="gpt-3.5-turbo", # or other models, eg. "gpt-4o"
|
||||
api_base=os.getenv("OPENAI_API_BASE"),
|
||||
api_key=os.getenv("OPENAI_API_KEY"),
|
||||
)
|
||||
context: AgentContext = AgentContext(conv_id="summarize")
|
||||
|
||||
agent_memory: AgentMemory = AgentMemory()
|
||||
agent_memory.gpts_memory.init(conv_id="summarize")
|
||||
|
||||
summarizer = (
|
||||
await MySummarizerAgent()
|
||||
@@ -709,7 +734,7 @@ async def main():
|
||||
Nuclear electric rocket
|
||||
""",
|
||||
)
|
||||
print(await agent_memory.gpts_memory.one_chat_completions("summarize"))
|
||||
print(await agent_memory.gpts_memory.app_link_chat_message("summarize"))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
@@ -9,7 +9,7 @@ the agent to the database.
|
||||
To use the database in the agent, you need to install the dependencies with the following command:
|
||||
|
||||
```bash
|
||||
pip install "dbgpt[simple_framework]>=0.5.9rc0"
|
||||
pip install "dbgpt[agent,simple_framework]>=0.7.0" "dbgpt_ext>=0.7.0"
|
||||
```
|
||||
|
||||
## Create A Database Connector
|
||||
@@ -33,7 +33,7 @@ created in temporary directory and will be deleted after the program exits.
|
||||
:::
|
||||
|
||||
```python
|
||||
from dbgpt.datasource.rdbms.conn_sqlite import SQLiteTempConnector
|
||||
from dbgpt_ext.datasource.rdbms.conn_sqlite import SQLiteTempConnector
|
||||
|
||||
connector = SQLiteTempConnector.create_temporary_db()
|
||||
connector.create_temp_tables(
|
||||
@@ -65,7 +65,7 @@ We connect to the SQLite database by giving the database file path, please make
|
||||
:::
|
||||
|
||||
```python
|
||||
from dbgpt.datasource.rdbms.conn_sqlite import SQLiteConnector
|
||||
from dbgpt_ext.datasource.rdbms.conn_sqlite import SQLiteConnector
|
||||
|
||||
connector = SQLiteConnector.from_file_path("path/to/your/database.db")
|
||||
```
|
||||
@@ -81,7 +81,7 @@ make sure the connection information is correct.
|
||||
:::
|
||||
|
||||
```python
|
||||
from dbgpt.datasource.rdbms.conn_mysql import MySQLConnector
|
||||
from dbgpt_ext.datasource.rdbms.conn_mysql import MySQLConnector
|
||||
|
||||
connector = MySQLConnector.from_uri_db(
|
||||
host="localhost",
|
||||
@@ -130,6 +130,7 @@ async def main():
|
||||
conv_id="test123", language="en", temperature=0.5, max_new_tokens=2048
|
||||
)
|
||||
agent_memory = AgentMemory()
|
||||
agent_memory.gpts_memory.init(conv_id="test123")
|
||||
|
||||
user_proxy = await UserProxyAgent().bind(agent_memory).bind(context).build()
|
||||
|
||||
@@ -149,7 +150,7 @@ async def main():
|
||||
)
|
||||
|
||||
## dbgpt-vis message infos
|
||||
print(await agent_memory.gpts_memory.one_chat_completions("test123"))
|
||||
print(await agent_memory.gpts_memory.app_link_chat_message("test123"))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
@@ -20,7 +20,7 @@ a simple way, only a little change to the code when you need to deploy your agen
|
||||
|
||||
Firstly, you need to install the `dbgpt` package with the following command:
|
||||
```bash
|
||||
pip install "dbgpt[agent]>=0.5.9rc0"
|
||||
pip install "dbgpt[agent,simple_framework]>=0.7.0" "dbgpt_ext>=0.7.0"
|
||||
```
|
||||
|
||||
Then, you can install the `openai` package with the following command:
|
||||
@@ -81,6 +81,9 @@ async def main():
|
||||
.bind(agent_memory)
|
||||
.build()
|
||||
)
|
||||
|
||||
# Initialize GptsMemory
|
||||
agent_memory.gpts_memory.init(conv_id="test123")
|
||||
|
||||
# Create a user proxy agent
|
||||
user_proxy = await UserProxyAgent().bind(context).bind(agent_memory).build()
|
||||
@@ -92,7 +95,7 @@ async def main():
|
||||
message="Calculate the result of 321 * 123",
|
||||
)
|
||||
# Obtain conversation history messages between agents
|
||||
print(await agent_memory.gpts_memory.one_chat_completions("test123"))
|
||||
print(await agent_memory.gpts_memory.app_link_chat_message("test123"))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
@@ -30,7 +30,7 @@ will be created in the temporary directory and will be deleted after the program
|
||||
Fist, create a temporary SQLite database and create some tables and insert some data:
|
||||
|
||||
```python
|
||||
from dbgpt.datasource.rdbms.conn_sqlite import SQLiteTempConnector
|
||||
from dbgpt_ext.datasource.rdbms.conn_sqlite import SQLiteTempConnector
|
||||
|
||||
connector = SQLiteTempConnector.create_temporary_db()
|
||||
connector.create_temp_tables(
|
||||
@@ -140,6 +140,7 @@ async def main():
|
||||
conv_id="test123", language="en", temperature=0.5, max_new_tokens=2048
|
||||
)
|
||||
agent_memory = AgentMemory()
|
||||
agent_memory.gpts_memory.init(conv_id="test123")
|
||||
|
||||
user_proxy = await UserProxyAgent().bind(agent_memory).bind(context).build()
|
||||
|
||||
@@ -167,7 +168,7 @@ async def main():
|
||||
)
|
||||
|
||||
# dbgpt-vis message infos
|
||||
print(await agent_memory.gpts_memory.one_chat_completions("test123"))
|
||||
print(await agent_memory.gpts_memory.app_link_chat_message("test123"))
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
@@ -82,6 +82,7 @@ async def main():
|
||||
conv_id="test123", language="en", temperature=0.5, max_new_tokens=2048
|
||||
)
|
||||
agent_memory = AgentMemory()
|
||||
agent_memory.gpts_memory.init(conv_id="test123")
|
||||
|
||||
user_proxy = await UserProxyAgent().bind(agent_memory).bind(context).build()
|
||||
|
||||
@@ -107,7 +108,7 @@ async def main():
|
||||
)
|
||||
|
||||
# dbgpt-vis message infos
|
||||
print(await agent_memory.gpts_memory.one_chat_completions("test123"))
|
||||
print(await agent_memory.gpts_memory.app_link_chat_message("test123"))
|
||||
|
||||
if __name__ == "__main__":
|
||||
asyncio.run(main())
|
||||
|
Reference in New Issue
Block a user