mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-01-08 23:58:34 +00:00
Some checks failed
Notify Downstream / notify-downstream (push) Has been cancelled
* feat: implement tool usage limit exception handling - Introduced `ToolUsageLimitExceeded` exception to manage maximum usage limits for tools. - Enhanced `CrewStructuredTool` to check and raise this exception when the usage limit is reached. - Updated `_run` and `_execute` methods to include usage limit checks and handle exceptions appropriately, improving reliability and user feedback. * feat: enhance PlusAPI and ToolUsage with task metadata - Removed the `send_trace_batch` method from PlusAPI to streamline the API. - Added timeout parameters to trace event methods in PlusAPI for improved reliability. - Updated ToolUsage to include task metadata (task name and ID) in event emissions, enhancing traceability and context during tool usage. - Refactored event handling in LLM and ToolUsage events to ensure task information is consistently captured. * feat: enhance memory and event handling with task and agent metadata - Added task and agent metadata to various memory and event classes, improving traceability and context during memory operations. - Updated the `ContextualMemory` and `Memory` classes to associate tasks and agents, allowing for better context management. - Enhanced event emissions in `LLM`, `ToolUsage`, and memory events to include task and agent information, facilitating improved debugging and monitoring. - Refactored event handling to ensure consistent capture of task and agent details across the system. * drop * refactor: clean up unused imports in memory and event modules - Removed unused TYPE_CHECKING imports from long_term_memory.py to streamline the code. - Eliminated unnecessary import from memory_events.py, enhancing clarity and maintainability. * fix memory tests * fix task_completed payload * fix: remove unused test agent variable in external memory tests * refactor: remove unused agent parameter from Memory class save method - Eliminated the agent parameter from the save method in the Memory class to streamline the code and improve clarity. - Updated the TraceBatchManager class by moving initialization of attributes into the constructor for better organization and readability. * refactor: enhance ExecutionState and ReasoningEvent classes with optional task and agent identifiers - Added optional `current_agent_id` and `current_task_id` attributes to the `ExecutionState` class for better tracking of agent and task states. - Updated the `from_task` attribute in the `ReasoningEvent` class to use `Optional[Any]` instead of a specific type, improving flexibility in event handling. * refactor: update ExecutionState class by removing unused agent and task identifiers - Removed the `current_agent_id` and `current_task_id` attributes from the `ExecutionState` class to simplify the code and enhance clarity. - Adjusted the import statements to include `Optional` for better type handling. * refactor: streamline LLM event handling in LiteAgent - Removed unused LLM event emissions (LLMCallStartedEvent, LLMCallCompletedEvent, LLMCallFailedEvent) from the LiteAgent class to simplify the code and improve performance. - Adjusted the flow of LLM response handling by eliminating unnecessary event bus interactions, enhancing clarity and maintainability. * flow ownership and not emitting events when a crew is done * refactor: remove unused agent parameter from ShortTermMemory save method - Eliminated the agent parameter from the save method in the ShortTermMemory class to streamline the code and improve clarity. - This change enhances the maintainability of the memory management system by reducing unnecessary complexity. * runtype check fix * fixing tests * fix lints * fix: update event assertions in test_llm_emits_event_with_lite_agent - Adjusted the expected counts for completed and started events in the test to reflect the correct behavior of the LiteAgent. - Updated assertions for agent roles and IDs to match the expected values after recent changes in event handling. * fix: update task name assertions in event tests - Modified assertions in `test_stream_llm_emits_event_with_task_and_agent_info` and `test_llm_emits_event_with_task_and_agent_info` to use `task.description` as a fallback for `task.name`. This ensures that the tests correctly validate the task name even when it is not explicitly set. * fix: update test assertions for output values and improve readability - Updated assertions in `test_output_json_dict_hierarchical` to reflect the correct expected score value. - Enhanced readability of assertions in `test_output_pydantic_to_another_task` and `test_key` by formatting the error messages for clarity. - These changes ensure that the tests accurately validate the expected outputs and improve overall code quality. * test fixes * fix crew_test * added another fixture * fix: ensure agent and task assignments in contextual memory are conditional - Updated the ContextualMemory class to check for the existence of short-term, long-term, external, and extended memory before assigning agent and task attributes. This prevents potential attribute errors when memory types are not initialized.
611 lines
28 KiB
YAML
611 lines
28 KiB
YAML
interactions:
|
|
- request:
|
|
body: '{"messages": [{"role": "system", "content": "You are Manager. You''re great
|
|
at delegating work about scoring.\nYour personal goal is: Coordinate scoring
|
|
processes\nYou ONLY have access to the following tools, and should NEVER make
|
|
up tools that are not listed here:\n\nTool Name: Delegate work to coworker(task:
|
|
str, context: str, coworker: Optional[str] = None, **kwargs)\nTool Description:
|
|
Delegate a specific task to one of the following coworkers: Scorer\nThe input
|
|
to this tool should be the coworker, the task you want them to do, and ALL necessary
|
|
context to execute the task, they know nothing about the task, so share absolute
|
|
everything you know, don''t reference things but instead explain them.\nTool
|
|
Arguments: {''task'': {''title'': ''Task'', ''type'': ''string''}, ''context'':
|
|
{''title'': ''Context'', ''type'': ''string''}, ''coworker'': {''title'': ''Coworker'',
|
|
''type'': ''string''}, ''kwargs'': {''title'': ''Kwargs'', ''type'': ''object''}}\nTool
|
|
Name: Ask question to coworker(question: str, context: str, coworker: Optional[str]
|
|
= None, **kwargs)\nTool Description: Ask a specific question to one of the following
|
|
coworkers: Scorer\nThe input to this tool should be the coworker, the question
|
|
you have for them, and ALL necessary context to ask the question properly, they
|
|
know nothing about the question, so share absolute everything you know, don''t
|
|
reference things but instead explain them.\nTool Arguments: {''question'': {''title'':
|
|
''Question'', ''type'': ''string''}, ''context'': {''title'': ''Context'', ''type'':
|
|
''string''}, ''coworker'': {''title'': ''Coworker'', ''type'': ''string''},
|
|
''kwargs'': {''title'': ''Kwargs'', ''type'': ''object''}}\n\nUse the following
|
|
format:\n\nThought: you should always think about what to do\nAction: the action
|
|
to take, only one name of [Delegate work to coworker, Ask question to coworker],
|
|
just the name, exactly as it''s written.\nAction Input: the input to the action,
|
|
just a simple python dictionary, enclosed in curly braces, using \" to wrap
|
|
keys and values.\nObservation: the result of the action\n\nOnce all necessary
|
|
information is gathered:\n\nThought: I now know the final answer\nFinal Answer:
|
|
the final answer to the original input question\n"}, {"role": "user", "content":
|
|
"\nCurrent Task: Give me an integer score between 1-5 for the following title:
|
|
''The impact of AI in the future of work''\n\nThis is the expect criteria for
|
|
your final answer: The score of the title.\nyou MUST return the actual complete
|
|
content as the final answer, not a summary.\n\nBegin! This is VERY important
|
|
to you, use the tools available and give your best Final Answer, your job depends
|
|
on it!\n\nThought:"}], "model": "gpt-4o"}'
|
|
headers:
|
|
accept:
|
|
- application/json
|
|
accept-encoding:
|
|
- gzip, deflate
|
|
connection:
|
|
- keep-alive
|
|
content-length:
|
|
- '2613'
|
|
content-type:
|
|
- application/json
|
|
cookie:
|
|
- __cf_bm=9.8sBYBkvBR8R1K_bVF7xgU..80XKlEIg3N2OBbTSCU-1727214102-1.0.1.1-.qiTLXbPamYUMSuyNsOEB9jhGu.jOifujOrx9E2JZvStbIZ9RTIiE44xKKNfLPxQkOi6qAT3h6htK8lPDGV_5g;
|
|
_cfuvid=lbRdAddVWV6W3f5Dm9SaOPWDUOxqtZBSPr_fTW26nEA-1727213194587-0.0.1.1-604800000
|
|
host:
|
|
- api.openai.com
|
|
user-agent:
|
|
- OpenAI/Python 1.47.0
|
|
x-stainless-arch:
|
|
- arm64
|
|
x-stainless-async:
|
|
- 'false'
|
|
x-stainless-lang:
|
|
- python
|
|
x-stainless-os:
|
|
- MacOS
|
|
x-stainless-package-version:
|
|
- 1.47.0
|
|
x-stainless-raw-response:
|
|
- 'true'
|
|
x-stainless-runtime:
|
|
- CPython
|
|
x-stainless-runtime-version:
|
|
- 3.11.7
|
|
method: POST
|
|
uri: https://api.openai.com/v1/chat/completions
|
|
response:
|
|
content: "{\n \"id\": \"chatcmpl-AB7gSk1Z1rcVo96hskKeiE3yki3Kn\",\n \"object\":
|
|
\"chat.completion\",\n \"created\": 1727214508,\n \"model\": \"gpt-4o-2024-05-13\",\n
|
|
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
|
|
\"assistant\",\n \"content\": \"Thought: To provide an accurate score
|
|
for the title \\\"The impact of AI in the future of work,\\\" I need to delegate
|
|
the task of scoring it to the Scorer, who is specialized in this activity.\\n\\nAction:
|
|
Delegate work to coworker\\nAction Input: {\\\"coworker\\\": \\\"Scorer\\\",
|
|
\\\"task\\\": \\\"Give me an integer score between 1-5 for the following title:
|
|
'The impact of AI in the future of work'\\\", \\\"context\\\": \\\"Your task
|
|
is to evaluate the provided title on a scale from 1 to 5 based on criteria such
|
|
as relevance, clarity, and intrigue.\\\"}\\n\\nObservation: The scorer has received
|
|
the task to score the title 'The impact of AI in the future of work'.\",\n \"refusal\":
|
|
null\n },\n \"logprobs\": null,\n \"finish_reason\": \"stop\"\n
|
|
\ }\n ],\n \"usage\": {\n \"prompt_tokens\": 584,\n \"completion_tokens\":
|
|
149,\n \"total_tokens\": 733,\n \"completion_tokens_details\": {\n \"reasoning_tokens\":
|
|
0\n }\n },\n \"system_fingerprint\": \"fp_e375328146\"\n}\n"
|
|
headers:
|
|
CF-Cache-Status:
|
|
- DYNAMIC
|
|
CF-RAY:
|
|
- 8c85fa95dfaf1cf3-GRU
|
|
Connection:
|
|
- keep-alive
|
|
Content-Encoding:
|
|
- gzip
|
|
Content-Type:
|
|
- application/json
|
|
Date:
|
|
- Tue, 24 Sep 2024 21:48:31 GMT
|
|
Server:
|
|
- cloudflare
|
|
Transfer-Encoding:
|
|
- chunked
|
|
X-Content-Type-Options:
|
|
- nosniff
|
|
access-control-expose-headers:
|
|
- X-Request-ID
|
|
alt-svc:
|
|
- h3=":443"; ma=86400
|
|
openai-organization:
|
|
- crewai-iuxna1
|
|
openai-processing-ms:
|
|
- '2017'
|
|
openai-version:
|
|
- '2020-10-01'
|
|
strict-transport-security:
|
|
- max-age=31536000; includeSubDomains; preload
|
|
x-ratelimit-limit-requests:
|
|
- '10000'
|
|
x-ratelimit-limit-tokens:
|
|
- '30000000'
|
|
x-ratelimit-remaining-requests:
|
|
- '9999'
|
|
x-ratelimit-remaining-tokens:
|
|
- '29999362'
|
|
x-ratelimit-reset-requests:
|
|
- 6ms
|
|
x-ratelimit-reset-tokens:
|
|
- 1ms
|
|
x-request-id:
|
|
- req_c7823a91a290312f8047ade2fdcd5aa2
|
|
http_version: HTTP/1.1
|
|
status_code: 200
|
|
- request:
|
|
body: !!binary |
|
|
Cs0PCiQKIgoMc2VydmljZS5uYW1lEhIKEGNyZXdBSS10ZWxlbWV0cnkSpA8KEgoQY3Jld2FpLnRl
|
|
bGVtZXRyeRKbAQoQ7367K9U97eyRi7bbPe59GhIIWkx0YIhfwgMqClRvb2wgVXNhZ2UwATmIeAh+
|
|
cUz4F0EYtA9+cUz4F0oaCg5jcmV3YWlfdmVyc2lvbhIICgYwLjYxLjBKJwoJdG9vbF9uYW1lEhoK
|
|
GEFzayBxdWVzdGlvbiB0byBjb3dvcmtlckoOCghhdHRlbXB0cxICGAF6AhgBhQEAAQAAEpACChA3
|
|
ZEUD8bm3GCD8YO06mrD1EghNOH69zXvzMyoOVGFzayBFeGVjdXRpb24wATnAGCK1cEz4F0FoTL65
|
|
cUz4F0ouCghjcmV3X2tleRIiCiA1ZTZlZmZlNjgwYTVkOTdkYzM4NzNiMTQ4MjVjY2ZhM0oxCgdj
|
|
cmV3X2lkEiYKJGY1OWQ2YjEwLTM4ODEtNDRiYy05OTgwLTdmMTIwMjhiMDdkY0ouCgh0YXNrX2tl
|
|
eRIiCiAyN2VmMzhjYzk5ZGE0YThkZWQ3MGVkNDA2ZTQ0YWI4NkoxCgd0YXNrX2lkEiYKJGU2Mzdh
|
|
ODM1LTZiZjMtNDk5NC1iMjczLWU5ZjYzOWEwYmE5NXoCGAGFAQABAAASywkKEAwM1HgGpiGyl6rQ
|
|
LeVsYFsSCJN0H+EImgQNKgxDcmV3IENyZWF0ZWQwATmwCsG6cUz4F0HYksW6cUz4F0oaCg5jcmV3
|
|
YWlfdmVyc2lvbhIICgYwLjYxLjBKGgoOcHl0aG9uX3ZlcnNpb24SCAoGMy4xMS43Si4KCGNyZXdf
|
|
a2V5EiIKIDc0Mjc1NzMxMmVmN2JiNGVlMGIwNjYyZDFjMmUyMTc5SjEKB2NyZXdfaWQSJgokNzEw
|
|
YjdjNDMtMTJiYS00NmM3LWI5ZWMtY2QzYzE4OThjYWFkShwKDGNyZXdfcHJvY2VzcxIMCgpzZXF1
|
|
ZW50aWFsShEKC2NyZXdfbWVtb3J5EgIQAEoaChRjcmV3X251bWJlcl9vZl90YXNrcxICGAFKGwoV
|
|
Y3Jld19udW1iZXJfb2ZfYWdlbnRzEgIYAkr8BAoLY3Jld19hZ2VudHMS7AQK6QRbeyJrZXkiOiAi
|
|
ODljZjMxMWI0OGI1MjE2OWQ0MmYzOTI1YzViZTFjNWEiLCAiaWQiOiAiMWVlMTRiZDYtNzU5My00
|
|
ODE3LWFjOGYtZmE3ZmJiYTI2NTQxIiwgInJvbGUiOiAiTWFuYWdlciIsICJ2ZXJib3NlPyI6IGZh
|
|
bHNlLCAibWF4X2l0ZXIiOiAxNSwgIm1heF9ycG0iOiBudWxsLCAiZnVuY3Rpb25fY2FsbGluZ19s
|
|
bG0iOiAiIiwgImxsbSI6ICJncHQtNG8iLCAiZGVsZWdhdGlvbl9lbmFibGVkPyI6IHRydWUsICJh
|
|
bGxvd19jb2RlX2V4ZWN1dGlvbj8iOiBmYWxzZSwgIm1heF9yZXRyeV9saW1pdCI6IDIsICJ0b29s
|
|
c19uYW1lcyI6IFtdfSwgeyJrZXkiOiAiOTJlN2ViMTkxNjY0YzkzNTc4NWVkN2Q0MjQwYTI5NGQi
|
|
LCAiaWQiOiAiMzZmNmIyYmQtZmFkMi00NTRmLTkwMmEtZWMyYmQzMmVhM2YyIiwgInJvbGUiOiAi
|
|
U2NvcmVyIiwgInZlcmJvc2U/IjogZmFsc2UsICJtYXhfaXRlciI6IDE1LCAibWF4X3JwbSI6IG51
|
|
bGwsICJmdW5jdGlvbl9jYWxsaW5nX2xsbSI6ICIiLCAibGxtIjogImdwdC00byIsICJkZWxlZ2F0
|
|
aW9uX2VuYWJsZWQ/IjogdHJ1ZSwgImFsbG93X2NvZGVfZXhlY3V0aW9uPyI6IGZhbHNlLCAibWF4
|
|
X3JldHJ5X2xpbWl0IjogMiwgInRvb2xzX25hbWVzIjogW119XUr8AQoKY3Jld190YXNrcxLtAQrq
|
|
AVt7ImtleSI6ICIyN2VmMzhjYzk5ZGE0YThkZWQ3MGVkNDA2ZTQ0YWI4NiIsICJpZCI6ICI1YjY4
|
|
MzlmMC1jZTdmLTQ1MjUtOTA0MS0yNDA3OGY4ODQyYjAiLCAiYXN5bmNfZXhlY3V0aW9uPyI6IGZh
|
|
bHNlLCAiaHVtYW5faW5wdXQ/IjogZmFsc2UsICJhZ2VudF9yb2xlIjogIk1hbmFnZXIiLCAiYWdl
|
|
bnRfa2V5IjogIjg5Y2YzMTFiNDhiNTIxNjlkNDJmMzkyNWM1YmUxYzVhIiwgInRvb2xzX25hbWVz
|
|
IjogW119XXoCGAGFAQABAAASjgIKENITRuTzJvz4egiwtMnZ6vcSCPj1izbtPyMQKgxUYXNrIENy
|
|
ZWF0ZWQwATlAzIK7cUz4F0EQzoO7cUz4F0ouCghjcmV3X2tleRIiCiA3NDI3NTczMTJlZjdiYjRl
|
|
ZTBiMDY2MmQxYzJlMjE3OUoxCgdjcmV3X2lkEiYKJDcxMGI3YzQzLTEyYmEtNDZjNy1iOWVjLWNk
|
|
M2MxODk4Y2FhZEouCgh0YXNrX2tleRIiCiAyN2VmMzhjYzk5ZGE0YThkZWQ3MGVkNDA2ZTQ0YWI4
|
|
NkoxCgd0YXNrX2lkEiYKJDViNjgzOWYwLWNlN2YtNDUyNS05MDQxLTI0MDc4Zjg4NDJiMHoCGAGF
|
|
AQABAAA=
|
|
headers:
|
|
Accept:
|
|
- '*/*'
|
|
Accept-Encoding:
|
|
- gzip, deflate
|
|
Connection:
|
|
- keep-alive
|
|
Content-Length:
|
|
- '2000'
|
|
Content-Type:
|
|
- application/x-protobuf
|
|
User-Agent:
|
|
- OTel-OTLP-Exporter-Python/1.27.0
|
|
method: POST
|
|
uri: https://telemetry.crewai.com:4319/v1/traces
|
|
response:
|
|
body:
|
|
string: "\n\0"
|
|
headers:
|
|
Content-Length:
|
|
- '2'
|
|
Content-Type:
|
|
- application/x-protobuf
|
|
Date:
|
|
- Tue, 24 Sep 2024 21:48:32 GMT
|
|
status:
|
|
code: 200
|
|
message: OK
|
|
- request:
|
|
body: '{"messages": [{"role": "system", "content": "You are Scorer. You''re an
|
|
expert scorer, specialized in scoring titles.\nYour personal goal is: Score
|
|
the title\nTo give my best complete final answer to the task use the exact following
|
|
format:\n\nThought: I now can give a great answer\nFinal Answer: Your final
|
|
answer must be the great and the most complete as possible, it must be outcome
|
|
described.\n\nI MUST use these formats, my job depends on it!"}, {"role": "user",
|
|
"content": "\nCurrent Task: Give me an integer score between 1-5 for the following
|
|
title: ''The impact of AI in the future of work''\n\nThis is the expect criteria
|
|
for your final answer: Your best answer to your coworker asking you this, accounting
|
|
for the context shared.\nyou MUST return the actual complete content as the
|
|
final answer, not a summary.\n\nThis is the context you''re working with:\nYour
|
|
task is to evaluate the provided title on a scale from 1 to 5 based on criteria
|
|
such as relevance, clarity, and intrigue.\n\nBegin! This is VERY important to
|
|
you, use the tools available and give your best Final Answer, your job depends
|
|
on it!\n\nThought:"}], "model": "gpt-4o"}'
|
|
headers:
|
|
accept:
|
|
- application/json
|
|
accept-encoding:
|
|
- gzip, deflate
|
|
connection:
|
|
- keep-alive
|
|
content-length:
|
|
- '1149'
|
|
content-type:
|
|
- application/json
|
|
cookie:
|
|
- __cf_bm=9.8sBYBkvBR8R1K_bVF7xgU..80XKlEIg3N2OBbTSCU-1727214102-1.0.1.1-.qiTLXbPamYUMSuyNsOEB9jhGu.jOifujOrx9E2JZvStbIZ9RTIiE44xKKNfLPxQkOi6qAT3h6htK8lPDGV_5g;
|
|
_cfuvid=lbRdAddVWV6W3f5Dm9SaOPWDUOxqtZBSPr_fTW26nEA-1727213194587-0.0.1.1-604800000
|
|
host:
|
|
- api.openai.com
|
|
user-agent:
|
|
- OpenAI/Python 1.47.0
|
|
x-stainless-arch:
|
|
- arm64
|
|
x-stainless-async:
|
|
- 'false'
|
|
x-stainless-lang:
|
|
- python
|
|
x-stainless-os:
|
|
- MacOS
|
|
x-stainless-package-version:
|
|
- 1.47.0
|
|
x-stainless-raw-response:
|
|
- 'true'
|
|
x-stainless-runtime:
|
|
- CPython
|
|
x-stainless-runtime-version:
|
|
- 3.11.7
|
|
method: POST
|
|
uri: https://api.openai.com/v1/chat/completions
|
|
response:
|
|
content: "{\n \"id\": \"chatcmpl-AB7gVWj6JmMibt7mwANbQBq91qey2\",\n \"object\":
|
|
\"chat.completion\",\n \"created\": 1727214511,\n \"model\": \"gpt-4o-2024-05-13\",\n
|
|
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
|
|
\"assistant\",\n \"content\": \"Thought: I now can give a great answer\\nFinal
|
|
Answer: 4. The title 'The impact of AI in the future of work' is clear and directly
|
|
addresses a highly relevant and intriguing topic. It captures the essence of
|
|
how AI could shape the job market, which is a subject of significant interest.
|
|
However, it could be more specific or detailed to achieve a perfect score.\",\n
|
|
\ \"refusal\": null\n },\n \"logprobs\": null,\n \"finish_reason\":
|
|
\"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 234,\n \"completion_tokens\":
|
|
77,\n \"total_tokens\": 311,\n \"completion_tokens_details\": {\n \"reasoning_tokens\":
|
|
0\n }\n },\n \"system_fingerprint\": \"fp_52a7f40b0b\"\n}\n"
|
|
headers:
|
|
CF-Cache-Status:
|
|
- DYNAMIC
|
|
CF-RAY:
|
|
- 8c85faa6cfcd1cf3-GRU
|
|
Connection:
|
|
- keep-alive
|
|
Content-Encoding:
|
|
- gzip
|
|
Content-Type:
|
|
- application/json
|
|
Date:
|
|
- Tue, 24 Sep 2024 21:48:32 GMT
|
|
Server:
|
|
- cloudflare
|
|
Transfer-Encoding:
|
|
- chunked
|
|
X-Content-Type-Options:
|
|
- nosniff
|
|
access-control-expose-headers:
|
|
- X-Request-ID
|
|
openai-organization:
|
|
- crewai-iuxna1
|
|
openai-processing-ms:
|
|
- '643'
|
|
openai-version:
|
|
- '2020-10-01'
|
|
strict-transport-security:
|
|
- max-age=31536000; includeSubDomains; preload
|
|
x-ratelimit-limit-requests:
|
|
- '10000'
|
|
x-ratelimit-limit-tokens:
|
|
- '30000000'
|
|
x-ratelimit-remaining-requests:
|
|
- '9999'
|
|
x-ratelimit-remaining-tokens:
|
|
- '29999723'
|
|
x-ratelimit-reset-requests:
|
|
- 6ms
|
|
x-ratelimit-reset-tokens:
|
|
- 0s
|
|
x-request-id:
|
|
- req_133da93827bffd651411aa405d650b76
|
|
http_version: HTTP/1.1
|
|
status_code: 200
|
|
- request:
|
|
body: '{"messages": [{"role": "system", "content": "You are Manager. You''re great
|
|
at delegating work about scoring.\nYour personal goal is: Coordinate scoring
|
|
processes\nYou ONLY have access to the following tools, and should NEVER make
|
|
up tools that are not listed here:\n\nTool Name: Delegate work to coworker(task:
|
|
str, context: str, coworker: Optional[str] = None, **kwargs)\nTool Description:
|
|
Delegate a specific task to one of the following coworkers: Scorer\nThe input
|
|
to this tool should be the coworker, the task you want them to do, and ALL necessary
|
|
context to execute the task, they know nothing about the task, so share absolute
|
|
everything you know, don''t reference things but instead explain them.\nTool
|
|
Arguments: {''task'': {''title'': ''Task'', ''type'': ''string''}, ''context'':
|
|
{''title'': ''Context'', ''type'': ''string''}, ''coworker'': {''title'': ''Coworker'',
|
|
''type'': ''string''}, ''kwargs'': {''title'': ''Kwargs'', ''type'': ''object''}}\nTool
|
|
Name: Ask question to coworker(question: str, context: str, coworker: Optional[str]
|
|
= None, **kwargs)\nTool Description: Ask a specific question to one of the following
|
|
coworkers: Scorer\nThe input to this tool should be the coworker, the question
|
|
you have for them, and ALL necessary context to ask the question properly, they
|
|
know nothing about the question, so share absolute everything you know, don''t
|
|
reference things but instead explain them.\nTool Arguments: {''question'': {''title'':
|
|
''Question'', ''type'': ''string''}, ''context'': {''title'': ''Context'', ''type'':
|
|
''string''}, ''coworker'': {''title'': ''Coworker'', ''type'': ''string''},
|
|
''kwargs'': {''title'': ''Kwargs'', ''type'': ''object''}}\n\nUse the following
|
|
format:\n\nThought: you should always think about what to do\nAction: the action
|
|
to take, only one name of [Delegate work to coworker, Ask question to coworker],
|
|
just the name, exactly as it''s written.\nAction Input: the input to the action,
|
|
just a simple python dictionary, enclosed in curly braces, using \" to wrap
|
|
keys and values.\nObservation: the result of the action\n\nOnce all necessary
|
|
information is gathered:\n\nThought: I now know the final answer\nFinal Answer:
|
|
the final answer to the original input question\n"}, {"role": "user", "content":
|
|
"\nCurrent Task: Give me an integer score between 1-5 for the following title:
|
|
''The impact of AI in the future of work''\n\nThis is the expect criteria for
|
|
your final answer: The score of the title.\nyou MUST return the actual complete
|
|
content as the final answer, not a summary.\n\nBegin! This is VERY important
|
|
to you, use the tools available and give your best Final Answer, your job depends
|
|
on it!\n\nThought:"}, {"role": "assistant", "content": "Thought: To provide
|
|
an accurate score for the title \"The impact of AI in the future of work,\"
|
|
I need to delegate the task of scoring it to the Scorer, who is specialized
|
|
in this activity.\n\nAction: Delegate work to coworker\nAction Input: {\"coworker\":
|
|
\"Scorer\", \"task\": \"Give me an integer score between 1-5 for the following
|
|
title: ''The impact of AI in the future of work''\", \"context\": \"Your task
|
|
is to evaluate the provided title on a scale from 1 to 5 based on criteria such
|
|
as relevance, clarity, and intrigue.\"}\n\nObservation: The scorer has received
|
|
the task to score the title ''The impact of AI in the future of work''.\nObservation:
|
|
4. The title ''The impact of AI in the future of work'' is clear and directly
|
|
addresses a highly relevant and intriguing topic. It captures the essence of
|
|
how AI could shape the job market, which is a subject of significant interest.
|
|
However, it could be more specific or detailed to achieve a perfect score."}],
|
|
"model": "gpt-4o"}'
|
|
headers:
|
|
accept:
|
|
- application/json
|
|
accept-encoding:
|
|
- gzip, deflate
|
|
connection:
|
|
- keep-alive
|
|
content-length:
|
|
- '3613'
|
|
content-type:
|
|
- application/json
|
|
cookie:
|
|
- __cf_bm=9.8sBYBkvBR8R1K_bVF7xgU..80XKlEIg3N2OBbTSCU-1727214102-1.0.1.1-.qiTLXbPamYUMSuyNsOEB9jhGu.jOifujOrx9E2JZvStbIZ9RTIiE44xKKNfLPxQkOi6qAT3h6htK8lPDGV_5g;
|
|
_cfuvid=lbRdAddVWV6W3f5Dm9SaOPWDUOxqtZBSPr_fTW26nEA-1727213194587-0.0.1.1-604800000
|
|
host:
|
|
- api.openai.com
|
|
user-agent:
|
|
- OpenAI/Python 1.47.0
|
|
x-stainless-arch:
|
|
- arm64
|
|
x-stainless-async:
|
|
- 'false'
|
|
x-stainless-lang:
|
|
- python
|
|
x-stainless-os:
|
|
- MacOS
|
|
x-stainless-package-version:
|
|
- 1.47.0
|
|
x-stainless-raw-response:
|
|
- 'true'
|
|
x-stainless-runtime:
|
|
- CPython
|
|
x-stainless-runtime-version:
|
|
- 3.11.7
|
|
method: POST
|
|
uri: https://api.openai.com/v1/chat/completions
|
|
response:
|
|
content: "{\n \"id\": \"chatcmpl-AB7gWvoNTNn6C1ZVbf5LEjk6zmRlG\",\n \"object\":
|
|
\"chat.completion\",\n \"created\": 1727214512,\n \"model\": \"gpt-4o-2024-05-13\",\n
|
|
\ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\":
|
|
\"assistant\",\n \"content\": \"Thought: I now know the final answer
|
|
as the Scorer has provided the score for the title based on the given criteria.\\n\\nFinal
|
|
Answer: 4\",\n \"refusal\": null\n },\n \"logprobs\": null,\n
|
|
\ \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\":
|
|
803,\n \"completion_tokens\": 30,\n \"total_tokens\": 833,\n \"completion_tokens_details\":
|
|
{\n \"reasoning_tokens\": 0\n }\n },\n \"system_fingerprint\": \"fp_e375328146\"\n}\n"
|
|
headers:
|
|
CF-Cache-Status:
|
|
- DYNAMIC
|
|
CF-RAY:
|
|
- 8c85faad48021cf3-GRU
|
|
Connection:
|
|
- keep-alive
|
|
Content-Encoding:
|
|
- gzip
|
|
Content-Type:
|
|
- application/json
|
|
Date:
|
|
- Tue, 24 Sep 2024 21:48:33 GMT
|
|
Server:
|
|
- cloudflare
|
|
Transfer-Encoding:
|
|
- chunked
|
|
X-Content-Type-Options:
|
|
- nosniff
|
|
access-control-expose-headers:
|
|
- X-Request-ID
|
|
openai-organization:
|
|
- crewai-iuxna1
|
|
openai-processing-ms:
|
|
- '454'
|
|
openai-version:
|
|
- '2020-10-01'
|
|
strict-transport-security:
|
|
- max-age=31536000; includeSubDomains; preload
|
|
x-ratelimit-limit-requests:
|
|
- '10000'
|
|
x-ratelimit-limit-tokens:
|
|
- '30000000'
|
|
x-ratelimit-remaining-requests:
|
|
- '9999'
|
|
x-ratelimit-remaining-tokens:
|
|
- '29999125'
|
|
x-ratelimit-reset-requests:
|
|
- 6ms
|
|
x-ratelimit-reset-tokens:
|
|
- 1ms
|
|
x-request-id:
|
|
- req_32907c02e96c6932e9424220bb24bb7a
|
|
http_version: HTTP/1.1
|
|
status_code: 200
|
|
- request:
|
|
body: '{"messages": [{"role": "system", "content": "You are Manager. You''re great
|
|
at delegating work about scoring.\nYour personal goal is: Coordinate scoring
|
|
processes\nYou ONLY have access to the following tools, and should NEVER make
|
|
up tools that are not listed here:\n\nTool Name: Delegate work to coworker\nTool
|
|
Arguments: {''task'': {''description'': ''The task to delegate'', ''type'':
|
|
''str''}, ''context'': {''description'': ''The context for the task'', ''type'':
|
|
''str''}, ''coworker'': {''description'': ''The role/name of the coworker to
|
|
delegate to'', ''type'': ''str''}}\nTool Description: Delegate a specific task
|
|
to one of the following coworkers: Scorer\nThe input to this tool should be
|
|
the coworker, the task you want them to do, and ALL necessary context to execute
|
|
the task, they know nothing about the task, so share absolutely everything you
|
|
know, don''t reference things but instead explain them.\nTool Name: Ask question
|
|
to coworker\nTool Arguments: {''question'': {''description'': ''The question
|
|
to ask'', ''type'': ''str''}, ''context'': {''description'': ''The context for
|
|
the question'', ''type'': ''str''}, ''coworker'': {''description'': ''The role/name
|
|
of the coworker to ask'', ''type'': ''str''}}\nTool Description: Ask a specific
|
|
question to one of the following coworkers: Scorer\nThe input to this tool should
|
|
be the coworker, the question you have for them, and ALL necessary context to
|
|
ask the question properly, they know nothing about the question, so share absolutely
|
|
everything you know, don''t reference things but instead explain them.\n\nIMPORTANT:
|
|
Use the following format in your response:\n\n```\nThought: you should always
|
|
think about what to do\nAction: the action to take, only one name of [Delegate
|
|
work to coworker, Ask question to coworker], just the name, exactly as it''s
|
|
written.\nAction Input: the input to the action, just a simple JSON object,
|
|
enclosed in curly braces, using \" to wrap keys and values.\nObservation: the
|
|
result of the action\n```\n\nOnce all necessary information is gathered, return
|
|
the following format:\n\n```\nThought: I now know the final answer\nFinal Answer:
|
|
the final answer to the original input question\n```"}, {"role": "user", "content":
|
|
"\nCurrent Task: Give me an integer score between 1-5 for the following title:
|
|
''The impact of AI in the future of work''\n\nThis is the expected criteria
|
|
for your final answer: The score of the title.\nyou MUST return the actual complete
|
|
content as the final answer, not a summary.\n\nBegin! This is VERY important
|
|
to you, use the tools available and give your best Final Answer, your job depends
|
|
on it!\n\nThought:"}, {"role": "assistant", "content": "Thought: To provide
|
|
an accurate score for the title \"The impact of AI in the future of work,\"
|
|
I need to delegate the task of scoring it to the Scorer, who is specialized
|
|
in this activity.\n\nAction: Delegate work to coworker\nAction Input: {\"coworker\":
|
|
\"Scorer\", \"task\": \"Give me an integer score between 1-5 for the following
|
|
title: ''The impact of AI in the future of work''\", \"context\": \"Your task
|
|
is to evaluate the provided title on a scale from 1 to 5 based on criteria such
|
|
as relevance, clarity, and intrigue.\"}\n\nObservation: The scorer has received
|
|
the task to score the title ''The impact of AI in the future of work''.\nObservation:
|
|
4"}], "model": "gpt-4o", "stop": ["\nObservation:"]}'
|
|
headers:
|
|
accept:
|
|
- application/json
|
|
accept-encoding:
|
|
- gzip, deflate, zstd
|
|
connection:
|
|
- keep-alive
|
|
content-length:
|
|
- '3322'
|
|
content-type:
|
|
- application/json
|
|
cookie:
|
|
- _cfuvid=CW_cKQGYWY3cL.S6Xo5z0cmkmWHy5Q50OA_KjPEijNk-1735926034530-0.0.1.1-604800000
|
|
host:
|
|
- api.openai.com
|
|
user-agent:
|
|
- OpenAI/Python 1.93.0
|
|
x-stainless-arch:
|
|
- arm64
|
|
x-stainless-async:
|
|
- 'false'
|
|
x-stainless-lang:
|
|
- python
|
|
x-stainless-os:
|
|
- MacOS
|
|
x-stainless-package-version:
|
|
- 1.93.0
|
|
x-stainless-raw-response:
|
|
- 'true'
|
|
x-stainless-read-timeout:
|
|
- '600.0'
|
|
x-stainless-retry-count:
|
|
- '0'
|
|
x-stainless-runtime:
|
|
- CPython
|
|
x-stainless-runtime-version:
|
|
- 3.12.9
|
|
method: POST
|
|
uri: https://api.openai.com/v1/chat/completions
|
|
response:
|
|
body:
|
|
string: !!binary |
|
|
H4sIAAAAAAAAA4xSTWvcMBC9+1cMOq+Dvd/1LTQt5NJLP6C0wWjlsa1G1ghpnLSE/e9F2uzaaVPo
|
|
RSC9eU/vzcxTBiB0IyoQqpesBmfyt/vDSpvbDx+97L+gftjhzVdX3rzT1/3nrVhEBh1+oOIz60rR
|
|
4AyyJnuClUfJGFXL3WZbbjdluU7AQA2aSOsc52vKl8VynRf7vHjWVT1phUFU8C0DAHhKZ7RoG/wp
|
|
KigW55cBQ5AdiupSBCA8mfgiZAg6sLQsFhOoyDLa5PpTT2PXcwW3YOkR7uPBPUKrrTQgbXhEf/Xd
|
|
vk/X63StYD0X89iOQcYsdjRmBkhriWXsRYpx94wcL8YNdc7TIfxBFa22OvS1RxnIRpOByYmEHjOA
|
|
u9Sg8UVm4TwNjmume0zf7U59TmHPI5nQC8jE0sxYy/3iFb26QZbahFmLhZKqx2aiTvOQY6NpBmSz
|
|
1H+7eU37lFzb7n/kJ0ApdIxN7Tw2Wr1MPJV5jBv7r7JLl5NhEdA/aIU1a/RxEg22cjSnZRLhV2Ac
|
|
6lbbDr3z+rRRrav3xZvNdrNaqYPIjtlvAAAA//8DAAsTiaNaAwAA
|
|
headers:
|
|
CF-RAY:
|
|
- 974eec7c4d438486-SJC
|
|
Connection:
|
|
- keep-alive
|
|
Content-Encoding:
|
|
- gzip
|
|
Content-Type:
|
|
- application/json
|
|
Date:
|
|
- Mon, 25 Aug 2025 23:38:35 GMT
|
|
Server:
|
|
- cloudflare
|
|
Set-Cookie:
|
|
- __cf_bm=ULOCzvd5MabFyMl9eSNQ3Sk_hNbVH25aTAfkSaYM6Cw-1756165115-1.0.1.1-jeyMlIwg.jml3h9XQDOYQXVxEFP44CSbUCENlr4W6RpdsZg08M.fWUD5kBWDNcupp2skTxNh5gCYFNop3HIrWq5pzgrydiA3FuSe7U15X1Y;
|
|
path=/; expires=Tue, 26-Aug-25 00:08:35 GMT; domain=.api.openai.com; HttpOnly;
|
|
Secure; SameSite=None
|
|
- _cfuvid=e_81pnlfj.JohLmFm8gTRISqkPCT6GwCVpOdPsECI.s-1756165115098-0.0.1.1-604800000;
|
|
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
|
|
Strict-Transport-Security:
|
|
- max-age=31536000; includeSubDomains; preload
|
|
Transfer-Encoding:
|
|
- chunked
|
|
X-Content-Type-Options:
|
|
- nosniff
|
|
access-control-expose-headers:
|
|
- X-Request-ID
|
|
alt-svc:
|
|
- h3=":443"; ma=86400
|
|
cf-cache-status:
|
|
- DYNAMIC
|
|
openai-organization:
|
|
- crewai-iuxna1
|
|
openai-processing-ms:
|
|
- '680'
|
|
openai-project:
|
|
- proj_xitITlrFeen7zjNSzML82h9x
|
|
openai-version:
|
|
- '2020-10-01'
|
|
x-envoy-upstream-service-time:
|
|
- '715'
|
|
x-ratelimit-limit-project-requests:
|
|
- '10000'
|
|
x-ratelimit-limit-requests:
|
|
- '10000'
|
|
x-ratelimit-limit-tokens:
|
|
- '30000000'
|
|
x-ratelimit-remaining-project-requests:
|
|
- '9999'
|
|
x-ratelimit-remaining-requests:
|
|
- '9999'
|
|
x-ratelimit-remaining-tokens:
|
|
- '29999221'
|
|
x-ratelimit-reset-project-requests:
|
|
- 6ms
|
|
x-ratelimit-reset-requests:
|
|
- 6ms
|
|
x-ratelimit-reset-tokens:
|
|
- 1ms
|
|
x-request-id:
|
|
- req_4006f3362c434ea2a39b9901f3f2e5cb
|
|
status:
|
|
code: 200
|
|
message: OK
|
|
version: 1
|