This commit is contained in:
CakeCN
2024-12-03 16:21:19 +08:00
commit 4198ca63b1
975 changed files with 333413 additions and 0 deletions

View File

@@ -0,0 +1,149 @@
{
"cells": [
{
"cell_type": "markdown",
"id": "d8bb3d3e-eec5-4a14-bb36-9fdf6b7d00b2",
"metadata": {},
"source": [
"# Distributed dialogue"
]
},
{
"cell_type": "markdown",
"id": "8626bd94-3a0b-4c61-85d6-b157ffc5ac25",
"metadata": {},
"source": [
"This example initializes an assistant agent and a user agent as separate processes and uses RPC to communicate between them. The full codes can be found in in `examples/distributed/distributed_dialog.py`"
]
},
{
"cell_type": "markdown",
"id": "605ebd1c-3222-4dce-b974-6377da37d555",
"metadata": {},
"source": [
"To install AgentScope, please follow the steps in [README.md](../README.md#installation)."
]
},
{
"cell_type": "markdown",
"id": "2417b9fc",
"metadata": {},
"source": [
"First, we need to set the model configs properly."
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "8d61bef5",
"metadata": {},
"outputs": [],
"source": [
"model_configs = [\n",
" {\n",
" \"model_type\": \"openai_chat\",\n",
" \"config_name\": \"gpt-3.5-turbo\",\n",
" \"model_name\": \"gpt-3.5-turbo\",\n",
" \"api_key\": \"xxx\",\n",
" \"organization\": \"xxx\",\n",
" \"generate_args\": {\n",
" \"temperature\": 0.0,\n",
" },\n",
" },\n",
" {\n",
" \"model_type\": \"openai_chat\",\n",
" \"config_name\": \"gpt-4\",\n",
" \"model_name\": \"gpt-4\",\n",
" \"api_key\": \"xxx\",\n",
" \"organization\": \"xxx\",\n",
" \"generate_args\": {\n",
" \"temperature\": 0.0,\n",
" },\n",
" }\n",
"]"
]
},
{
"cell_type": "markdown",
"id": "710f835a-ecc8-481f-a4ab-7f0db33e68f4",
"metadata": {},
"source": [
"Then, we need to initialize two agents: an assistant agent and a user agnent.\n",
"\n",
"To facilitate display on jupyter, the agents will be started in a standalone multi-process mode. For a fully distributed version, please refer to `examples/distributed/distributed_dialog.py`."
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "bf3226dc",
"metadata": {},
"outputs": [],
"source": [
"import agentscope\n",
"from agentscope.agents.user_agent import UserAgent\n",
"from agentscope.agents.dialog_agent import DialogAgent\n",
"\n",
"agentscope.init(\n",
" model_configs=model_configs\n",
")\n",
"\n",
"assistant_agent = DialogAgent(\n",
" name=\"Assistant\",\n",
" sys_prompt=\"You are a helpful assistant.\",\n",
" model_config_name=\"gpt-3.5-turbo\",\n",
" use_memory=True,\n",
").to_dist()\n",
"user_agent = UserAgent(\n",
" name=\"User\",\n",
")"
]
},
{
"cell_type": "markdown",
"id": "dd70c37d",
"metadata": {},
"source": [
"Finally, let's write the main process of the dialogue and chat with the assistant."
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "b0f3c851",
"metadata": {},
"outputs": [],
"source": [
"import time\n",
"from loguru import logger\n",
"\n",
"msg = user_agent()\n",
"while not msg.content.endswith(\"exit\"):\n",
" msg = assistant_agent(msg)\n",
" logger.chat(msg)\n",
" msg = user_agent(msg)"
]
}
],
"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.9"
}
},
"nbformat": 4,
"nbformat_minor": 5
}