diff --git a/tests/agent_test.py b/tests/agent_test.py index 725525510..b5b3aae93 100644 --- a/tests/agent_test.py +++ b/tests/agent_test.py @@ -1797,46 +1797,3 @@ def test_litellm_anthropic_error_handling(): # Verify the LLM call was only made once (no retries) mock_llm_call.assert_called_once() - - -@pytest.mark.vcr(filter_headers=["authorization"]) -def test_agent_streaming_with_tool_calling(): - """Test that streaming works correctly with tool calling.""" - - # Define a tool that will be called - @tool - def retrieve_secret_information() -> str: - """Retrieve the super secret password from the secure database.""" - return "SuperSecretPassword123!" - - # Create an LLM with streaming enabled - llm = LLM( - model="gpt-4o-mini", - stream=True, - ) - - # Create a secret agent - secret_agent = Agent( - role="Secret Information Specialist", - goal="Retrieve classified information securely", - backstory="A highly trained operative with clearance to access confidential data", - tools=[retrieve_secret_information], - llm=llm, - max_iter=3, # Limit iterations to prevent infinite loops - max_execution_time=60, # Add timeout of 60 seconds - ) - - # Create a secret retrieval task - secret_task = Task( - description="Retrieve the super secret password using the appropriate tool", - agent=secret_agent, - expected_output="The retrieved super secret password", - ) - - # Execute the task directly with the agent - output = secret_agent.execute_task(task=secret_task) - - # Verify the output contains the secret password - assert ( - "SuperSecretPassword123!" in output - ), f"Expected secret password not found in output: {output}" diff --git a/tests/cassettes/test_agent_streaming_with_tool_calling.yaml b/tests/cassettes/test_agent_streaming_with_tool_calling.yaml deleted file mode 100644 index 37afceb7b..000000000 --- a/tests/cassettes/test_agent_streaming_with_tool_calling.yaml +++ /dev/null @@ -1,374 +0,0 @@ -interactions: -- request: - body: '{"messages": [{"role": "system", "content": "You are Secret Information - Specialist. A highly trained operative with clearance to access confidential - data\nYour personal goal is: Retrieve classified information securely\nYou ONLY - have access to the following tools, and should NEVER make up tools that are - not listed here:\n\nTool Name: retrieve_secret_information\nTool Arguments: - {}\nTool Description: Retrieve the super secret password from the secure database.\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 [retrieve_secret_information], - 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: Retrieve the super secret password - using the appropriate tool\n\nThis is the expected criteria for your final answer: - The retrieved super secret password\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-mini", "stop": ["\nObservation:"], "stream": - true}' - headers: - accept: - - application/json - accept-encoding: - - gzip, deflate, zstd - connection: - - keep-alive - content-length: - - '1544' - content-type: - - application/json - host: - - api.openai.com - user-agent: - - OpenAI/Python 1.65.1 - x-stainless-arch: - - arm64 - x-stainless-async: - - 'false' - x-stainless-lang: - - python - x-stainless-os: - - MacOS - x-stainless-package-version: - - 1.65.1 - 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.8 - method: POST - uri: https://api.openai.com/v1/chat/completions - response: - body: - string: 'data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":"you"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - should"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - always"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - think"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - about"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - what"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - to"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - do"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" \n"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":"Action"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - retrieve"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":"_secret"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":"_information"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" \n"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":"Action"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - Input"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - {}"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" "},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUWRKUD7QuVYmLhW9BOalNVt025","object":"chat.completion.chunk","created":1741125204,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]} - - - data: [DONE] - - - ' - headers: - CF-RAY: - - 91b49b30cf3ab076-ATL - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Tue, 04 Mar 2025 21:53:24 GMT - Server: - - cloudflare - Set-Cookie: - - __cf_bm=2x17LZrhoAdXpHShcYiDoeV_QSnRSsqFq9r.BqGRfGo-1741125204-1.0.1.1-YZGIwFGMOXl0ffELbM_Kmnd9B5j3zTo6QnBhV4Hw4JTx3QvsvMhpk_b9bNpHfVQpLuwOMJf_AcOzmUiu.45vV0VkRGX1M8Py2FTtczHZdqA; - path=/; expires=Tue, 04-Mar-25 22:23:24 GMT; domain=.api.openai.com; HttpOnly; - Secure; SameSite=None - - _cfuvid=FRRGVgDDqV5FLWDElnI69t9ueapMR.vX2_aMC3hjIKo-1741125204818-0.0.1.1-604800000; - path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None - 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: - - '117' - openai-version: - - '2020-10-01' - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999641' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s - x-request-id: - - req_0275c408a8d17355a52b65a7d7b257f6 - status: - code: 200 - message: OK -- request: - body: '{"messages": [{"role": "system", "content": "You are Secret Information - Specialist. A highly trained operative with clearance to access confidential - data\nYour personal goal is: Retrieve classified information securely\nYou ONLY - have access to the following tools, and should NEVER make up tools that are - not listed here:\n\nTool Name: retrieve_secret_information\nTool Arguments: - {}\nTool Description: Retrieve the super secret password from the secure database.\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 [retrieve_secret_information], - 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: Retrieve the super secret password - using the appropriate tool\n\nThis is the expected criteria for your final answer: - The retrieved super secret password\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": "you should always think - about what to do \nAction: retrieve_secret_information \nAction Input: {} \nObservation: - SuperSecretPassword123!"}], "model": "gpt-4o-mini", "stop": ["\nObservation:"], - "stream": true}' - headers: - accept: - - application/json - accept-encoding: - - gzip, deflate, zstd - connection: - - keep-alive - content-length: - - '1721' - content-type: - - application/json - cookie: - - __cf_bm=2x17LZrhoAdXpHShcYiDoeV_QSnRSsqFq9r.BqGRfGo-1741125204-1.0.1.1-YZGIwFGMOXl0ffELbM_Kmnd9B5j3zTo6QnBhV4Hw4JTx3QvsvMhpk_b9bNpHfVQpLuwOMJf_AcOzmUiu.45vV0VkRGX1M8Py2FTtczHZdqA; - _cfuvid=FRRGVgDDqV5FLWDElnI69t9ueapMR.vX2_aMC3hjIKo-1741125204818-0.0.1.1-604800000 - host: - - api.openai.com - user-agent: - - OpenAI/Python 1.65.1 - x-stainless-arch: - - arm64 - x-stainless-async: - - 'false' - x-stainless-lang: - - python - x-stainless-os: - - MacOS - x-stainless-package-version: - - 1.65.1 - 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.8 - method: POST - uri: https://api.openai.com/v1/chat/completions - response: - body: - string: 'data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":"Thought"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - I"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - now"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - know"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - the"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - final"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - answer"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" \n"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":"Final"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - Answer"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":" - Super"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":"Secret"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":"Password"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":"123"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{"content":"!"},"logprobs":null,"finish_reason":null}]} - - - data: {"id":"chatcmpl-B7UUXdsSwftzgjcfZUmsdpEcJ5IPF","object":"chat.completion.chunk","created":1741125205,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_7fcd609668","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}]} - - - data: [DONE] - - - ' - headers: - CF-Cache-Status: - - DYNAMIC - CF-RAY: - - 91b49b355e0db076-ATL - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Tue, 04 Mar 2025 21:53:25 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: - - '123' - openai-version: - - '2020-10-01' - strict-transport-security: - - max-age=31536000; includeSubDomains; preload - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999605' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s - x-request-id: - - req_81ee0a7c482bfe13d0d8a01d0810bdaf - status: - code: 200 - message: OK -version: 1