Skip to content

Commit

Permalink
Fix(agents-api): Fix docs tools
Browse files Browse the repository at this point in the history
  • Loading branch information
HamadaSalhab committed Oct 7, 2024
1 parent 96cb3e3 commit 38f8a1d
Showing 1 changed file with 38 additions and 10 deletions.
48 changes: 38 additions & 10 deletions agents-api/agents_api/activities/execute_system.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@
from uuid import UUID

from beartype import beartype
from fastapi.background import BackgroundTasks
from temporalio import activity

from agents_api.autogen.Docs import CreateDocRequest

from ..autogen.Docs import CreateDocRequest
from ..autogen.Tools import SystemDef
from ..common.protocol.tasks import StepContext
from ..env import testing
Expand Down Expand Up @@ -33,6 +33,8 @@
from ..models.user.get_user import get_user as get_user_query
from ..models.user.list_users import list_users as list_users_query
from ..models.user.update_user import update_user as update_user_query
from ..routers.docs.create_doc import create_agent_doc, create_user_doc
from ..routers.docs.search_docs import search_agent_docs, search_user_docs


@beartype
Expand Down Expand Up @@ -65,17 +67,32 @@ async def execute_system(
agent_doc_args = {
**{
"owner_type": "agent",
"owner_id": arguments.pop("agent_id"),
"owner_id": arguments["agent_id"],
},
**arguments,
}
agent_doc_args.pop("agent_id")

if system.operation == "list":
return list_docs_query(**agent_doc_args)

elif system.operation == "create":
return create_doc_query(**agent_doc_args)
# The `create_agent_doc` function requires `x_developer_id` instead of `developer_id`.
arguments["x_developer_id"] = arguments.pop("developer_id")
return await create_agent_doc(
data=CreateDocRequest(**arguments.pop("data")),
background_tasks=BackgroundTasks(),
**arguments,
)

elif system.operation == "delete":
return delete_doc_query(**agent_doc_args)

elif system.operation == "search":
# The `search_agent_docs` function requires `x_developer_id` instead of `developer_id`.
arguments["x_developer_id"] = arguments.pop("developer_id")
return await search_agent_docs(**arguments)

# NO SUBRESOURCE
elif system.subresource == None:
if system.operation == "list":
Expand All @@ -97,21 +114,32 @@ async def execute_system(
user_doc_args = {
**{
"owner_type": "user",
"owner_id": arguments.pop("user_id"),
"owner_id": arguments["user_id"],
},
**arguments,
}
user_doc_args.pop("user_id")

if system.operation == "list":
return list_docs_query(**user_doc_args)

elif system.operation == "create":
# Create a CreateDocRequest object from the "data" field in the arguments
if "data" in user_doc_args:
doc_data = user_doc_args.pop("data")
create_doc_request = CreateDocRequest(**doc_data)
return create_doc_query(**user_doc_args, data=create_doc_request)
# The `create_user_doc` function requires `x_developer_id` instead of `developer_id`.
arguments["x_developer_id"] = arguments.pop("developer_id")
return await create_user_doc(
data=CreateDocRequest(**arguments.pop("data")),
background_tasks=BackgroundTasks(),
**arguments,
)

elif system.operation == "delete":
return delete_doc_query(**user_doc_args)

elif system.operation == "search":
# The `search_user_docs` function requires `x_developer_id` instead of `developer_id`.
arguments["x_developer_id"] = arguments.pop("developer_id")
return await search_user_docs(**arguments)

# NO SUBRESOURCE
elif system.subresource == None:
if system.operation == "list":
Expand Down

0 comments on commit 38f8a1d

Please sign in to comment.