diff --git a/py/pyproject.toml b/py/pyproject.toml index b0a55b98..d693372c 100644 --- a/py/pyproject.toml +++ b/py/pyproject.toml @@ -241,7 +241,7 @@ lint = [ "numpy", "strands-agents", "temporalio", - "pydantic-ai>=1.99.0,<2", + "pydantic-ai", "opentelemetry-instrumentation-openai==0.59.1", "langsmith==0.8.0", "langchain-core", @@ -364,11 +364,11 @@ latest = "strands-agents==1.45.0" "1.20.0" = "strands-agents==1.20.0" [tool.braintrust.matrix.pydantic-ai-integration] -latest = "pydantic-ai==1.107.0" +latest = "pydantic-ai==2.0.0" "1.10.0" = "pydantic-ai==1.10.0" [tool.braintrust.matrix.pydantic-ai-wrap-openai] -latest = "pydantic-ai==1.107.0" +latest = "pydantic-ai==2.0.0" "1.0.1" = "pydantic-ai==1.0.1" "0.1.9" = "pydantic-ai==0.1.9" diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/1.10.0/test_agent_run_stream_events_direct_async_for_compatibility.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/1.10.0/test_agent_run_stream_events_direct_async_for_compatibility.yaml new file mode 100644 index 00000000..15b1444f --- /dev/null +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/1.10.0/test_agent_run_stream_events_direct_async_for_compatibility.yaml @@ -0,0 +1,138 @@ +interactions: +- request: + body: '{"messages":[{"role":"user","content":"What is 3+7?"}],"model":"gpt-4o-mini","max_completion_tokens":50,"stream":true,"stream_options":{"include_usage":true}}' + headers: + accept: + - application/json + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '158' + content-type: + - application/json + host: + - api.openai.com + user-agent: + - pydantic-ai/1.10.0 + x-stainless-arch: + - arm64 + x-stainless-async: + - async:asyncio + x-stainless-lang: + - python + x-stainless-os: + - MacOS + x-stainless-package-version: + - 2.44.0 + x-stainless-read-timeout: + - '600' + x-stainless-retry-count: + - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 + method: POST + uri: https://api.openai.com/v1/chat/completions + response: + body: + string: 'data: {"id":"chatcmpl-Dw7MgLBKFpfIfb48dopew66iiLDdY","object":"chat.completion.chunk","created":1782743706,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_b4abb0dc92","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"PW5jM5YEe"} + + + data: {"id":"chatcmpl-Dw7MgLBKFpfIfb48dopew66iiLDdY","object":"chat.completion.chunk","created":1782743706,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_b4abb0dc92","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"RcPePHIR40"} + + + data: {"id":"chatcmpl-Dw7MgLBKFpfIfb48dopew66iiLDdY","object":"chat.completion.chunk","created":1782743706,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_b4abb0dc92","choices":[{"index":0,"delta":{"content":" + +"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"P1O5LWcF4"} + + + data: {"id":"chatcmpl-Dw7MgLBKFpfIfb48dopew66iiLDdY","object":"chat.completion.chunk","created":1782743706,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_b4abb0dc92","choices":[{"index":0,"delta":{"content":" + "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"h7Xskn7Ezw"} + + + data: {"id":"chatcmpl-Dw7MgLBKFpfIfb48dopew66iiLDdY","object":"chat.completion.chunk","created":1782743706,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_b4abb0dc92","choices":[{"index":0,"delta":{"content":"7"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"rd3rat50BE"} + + + data: {"id":"chatcmpl-Dw7MgLBKFpfIfb48dopew66iiLDdY","object":"chat.completion.chunk","created":1782743706,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_b4abb0dc92","choices":[{"index":0,"delta":{"content":" + equals"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"z01p"} + + + data: {"id":"chatcmpl-Dw7MgLBKFpfIfb48dopew66iiLDdY","object":"chat.completion.chunk","created":1782743706,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_b4abb0dc92","choices":[{"index":0,"delta":{"content":" + "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"Gh3ymttR1A"} + + + data: {"id":"chatcmpl-Dw7MgLBKFpfIfb48dopew66iiLDdY","object":"chat.completion.chunk","created":1782743706,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_b4abb0dc92","choices":[{"index":0,"delta":{"content":"10"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"rHVg7XPRo"} + + + data: {"id":"chatcmpl-Dw7MgLBKFpfIfb48dopew66iiLDdY","object":"chat.completion.chunk","created":1782743706,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_b4abb0dc92","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"xuSS1T8dOO"} + + + data: {"id":"chatcmpl-Dw7MgLBKFpfIfb48dopew66iiLDdY","object":"chat.completion.chunk","created":1782743706,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_b4abb0dc92","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"4VhhT"} + + + data: {"id":"chatcmpl-Dw7MgLBKFpfIfb48dopew66iiLDdY","object":"chat.completion.chunk","created":1782743706,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_b4abb0dc92","choices":[],"usage":{"prompt_tokens":14,"completion_tokens":8,"total_tokens":22,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"O1zxpnAvp6K"} + + + data: [DONE] + + + ' + headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray + - CF-Ray + alt-svc: + - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a7e1387fc109-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:35:06 GMT + openai-organization: + - braintrust-data + openai-processing-ms: + - '275' + openai-project: + - proj_vsCSXafhhByzWOThMrJcZiw9 + openai-version: + - '2020-10-01' + server: + - cloudflare + set-cookie: + - __cf_bm=ejFaExCNvv3C8eqEpL1UbTAaPI_XixPJCU6C4LG3Pdc-1782743705.792197-1.0.1.1-YrpmaE.fpsNyJrqAeTchaJbg9G7mHdno2.DaD_IWiJsQYvVYu6kggFmHxY2Ec.YD6vcCbQ4VZ4NqzBNZ7.ne3szBSksbqv3Co1D7EEYJCEZUpuig07jSORnhjMRIKaG3; + HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, + 29 Jun 2026 15:05:06 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff + x-openai-proxy-wasm: + - v0.1 + x-ratelimit-limit-requests: + - '30000' + x-ratelimit-limit-tokens: + - '150000000' + x-ratelimit-remaining-requests: + - '29999' + x-ratelimit-remaining-tokens: + - '149999995' + x-ratelimit-reset-requests: + - 2ms + x-ratelimit-reset-tokens: + - 0s + x-request-id: + - req_a1f191508b3249ed8f658dff427b2c39 + status: + code: 200 + message: OK +version: 1 diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_async.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_async.yaml index cd99f503..0d88fe02 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_async.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_async.yaml @@ -1,94 +1,110 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What is 2+2? Answer with just the - number."}],"model":"gpt-4o-mini","max_completion_tokens":50,"stream":false}' + body: '{"input":[{"role":"user","content":"What is 2+2? Answer with just the number."}],"max_output_tokens":50,"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '148' - Content-Type: + content-length: + - '141' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7IxwRR79A4j0IIfrf5qRXA1IQpH\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551835,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"4\",\n \"refusal\": null,\n - \ \"annotations\": []\n },\n \"logprobs\": null,\n \"finish_reason\": - \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 20,\n \"completion_tokens\": - 1,\n \"total_tokens\": 21,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_d07f82f293\"\n}\n" + string: "{\n \"id\": \"resp_00ee384b1fcc4457006a42812da90881a1be0f45db3a0d113c\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743341,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743342,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 50,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_00ee384b1fcc4457006a42812e152881a1b11810f6b1846ac6\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"4\"\n }\n ],\n + \ \"role\": \"assistant\"\n }\n ],\n \"parallel_tool_calls\": true,\n + \ \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 20,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 2,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 22\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fd76dd7d180e-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:35 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359efd0f27aaa1-YYZ + connection: + - keep-alive content-length: - - '807' + - '1937' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:02 GMT openai-organization: - braintrust-data openai-processing-ms: - - '615' + - '591' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=74__0n4BS.62Jo5m5JCo_U1cQO4Rv95v2RCvFOAse7k-1781551834.7014158-1.0.1.1-1V.TS52r2fLMfbY7qQBqHsxE_pI5FBkyj8PUnIxoOrhxi1.k6D5QdFyCn6y1OD0hZgoTLgqKNgR3PDUdQA4PEhbLFSpS4t0ODw2J2gj_xXGy9d3Qy87jwMvNe460Ad5u; + - __cf_bm=D2H1_RRnLjQCBnZfvpto2HcpVP2ZTpFxXKxEeaAisKw-1782743341.6018658-1.0.1.1-XCehIu9nn066rZqLtgddPVxXdl0P0friYgywUZ2wXAcmOh8etKanZeZeSI21YpXQ.WoagM6ngK6rSYpiaSHKRCfYtrLeJf4bcUlM22eqtVZaF36Ki0urN9vkB1ib6lTk; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:35 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:02 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -96,13 +112,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999987' + - '149999962' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_889adbc7b4b94ca28a65f4ac9e551893 + - 345b38e0-22e5-4e5f-a6d6-4bc3c1ff3e4d status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream.yaml index f8be1197..776b481a 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream.yaml @@ -1,156 +1,197 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Count from 1 to 5"}],"model":"gpt-4o-mini","max_completion_tokens":100,"stream":true,"stream_options":{"include_usage":true}}' + body: '{"input":[{"role":"user","content":"Count from 1 to 5"}],"max_output_tokens":100,"model":"gpt-4o-mini","stream":true}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '164' - Content-Type: + content-length: + - '117' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"8J3RFXiQI"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_033a2fcc978b0e50006a42813549b481a1b604a588175cf16a","object":"response","created_at":1782743349,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":100,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_033a2fcc978b0e50006a42813549b481a1b604a588175cf16a","object":"response","created_at":1782743349,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":100,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"1","item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","logprobs":[],"obfuscation":"migEfGSbC2ao4aN","output_index":0,"sequence_number":4} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","logprobs":[],"obfuscation":"T9W062RQ0Vl5U4e","output_index":0,"sequence_number":5} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","logprobs":[],"obfuscation":"E1mLSvhw9D2zoa8","output_index":0,"sequence_number":6} + + + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"2","item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","logprobs":[],"obfuscation":"tAyqiMDqrjZ25Jd","output_index":0,"sequence_number":7} - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"jsIx8SJEvI"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"NjDkHpqM51"} + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","logprobs":[],"obfuscation":"hf3DQYvCHWHEwoP","output_index":0,"sequence_number":8} - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"xwja3CqXbp"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","logprobs":[],"obfuscation":"eGjBgMBgfZQn331","output_index":0,"sequence_number":9} - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"dyDRYjh8sX"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"6TO2lwwuro"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"3","item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","logprobs":[],"obfuscation":"jMFrW6IwXD1C1vX","output_index":0,"sequence_number":10} - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"ksCikOzAFM"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","logprobs":[],"obfuscation":"d3xsKYktPhG7kRG","output_index":0,"sequence_number":11} - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"qQi5hZp5zo"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"tCyGHrKXZP"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","logprobs":[],"obfuscation":"i6DthM4Twqfdyn2","output_index":0,"sequence_number":12} - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"QjF17w1sJq"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"4","item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","logprobs":[],"obfuscation":"Q3UwIKkvNEenQls","output_index":0,"sequence_number":13} - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"91CXyWk8QE"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"VHYJTf5gq8"} + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","logprobs":[],"obfuscation":"2Lct6PByuLloGRr","output_index":0,"sequence_number":14} - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"Sla9FmUI6z"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","logprobs":[],"obfuscation":"qjXTLmtWCi2KRmp","output_index":0,"sequence_number":15} - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"5"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"PXk0IOPb7B"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"ylmdZ9c6LA"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"5","item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","logprobs":[],"obfuscation":"tvpJi9rVF56mOil","output_index":0,"sequence_number":16} - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"Jdv5Q"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":".","item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","logprobs":[],"obfuscation":"8RN1IprHMsAX6xP","output_index":0,"sequence_number":17} - data: {"id":"chatcmpl-Dr7J6Fz2WO6xjx4b4RdvwRApReOoi","object":"chat.completion.chunk","created":1781551844,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[],"usage":{"prompt_tokens":14,"completion_tokens":14,"total_tokens":28,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"VqJAB714qZ"} + event: response.output_text.done - data: [DONE] + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","logprobs":[],"output_index":0,"sequence_number":18,"text":"1, + 2, 3, 4, 5."} + + + event: response.content_part.done + + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3, 4, 5."},"sequence_number":19} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3, 4, 5."}],"role":"assistant"},"output_index":0,"sequence_number":20} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_033a2fcc978b0e50006a42813549b481a1b604a588175cf16a","object":"response","created_at":1782743349,"status":"completed","background":false,"completed_at":1782743349,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":100,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_033a2fcc978b0e50006a4281359bd081a1b947fe955eb2bddd","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3, 4, 5."}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":14,"input_tokens_details":{"cached_tokens":0},"output_tokens":15,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":29},"user":null,"metadata":{}},"sequence_number":21} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fdb41b14813d-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:30:44 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f2cca554fcb-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:09 GMT openai-organization: - braintrust-data openai-processing-ms: - - '327' + - '93' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=fZI6qHlAJREUWXS5PQYieLDBmKrXoKGVpDCX_MT_dlU-1781551844.4946702-1.0.1.1-NbkmoUjpfEss7rkt8A.fdRtpIfYreQsqPS1uzoXOYMYrWgCnXmvCwsRZNovvDTijh6JPYSDcVGCChC_Qg.kHfFOHJ11zWEcQevbzLHcsWrMx4humo4ctUvvUzQ2rEfSb; + - __cf_bm=Sb9MWrhnwNWus62qpwZ7HfnTruFS.Gpy_fSQeab6Cfs-1782743349.2439826-1.0.1.1-NVCMrFMOBIT1s2_m4A2TbWbIvGf2GAeoRsImXeLIdfxE52cyZHTxhz03g7fm74vGFhJHvTU.aiHhc7YHHiw4Bh28pu1DIgc4PRYDR1EaElsacXkRzyAV4ChqC0b_g7Il; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:44 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999992' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:09 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_de2f0688b0f4488b9532bc7ae605550d + - 5b556346-fbaf-43c3-863d-d8f771f9964b status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream_events.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream_events.yaml index 0e023ad4..f7eec0c1 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream_events.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream_events.yaml @@ -1,138 +1,167 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What is 5+5?"}],"model":"gpt-4o-mini","max_completion_tokens":100,"stream":true,"stream_options":{"include_usage":true}}' + body: '{"input":[{"role":"user","content":"What is 5+5?"}],"max_output_tokens":100,"model":"gpt-4o-mini","stream":true}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '159' - Content-Type: + content-length: + - '112' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7JLEgWKe4HaoZuZknJ5pxr77bmg","object":"chat.completion.chunk","created":1781551859,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_dca9632699","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"R984U0D2K"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_07c5357c7dc3da2e006a42814c2e20819ea839bc6446b7b105","object":"response","created_at":1782743372,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":100,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_07c5357c7dc3da2e006a42814c2e20819ea839bc6446b7b105","object":"response","created_at":1782743372,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":100,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_07c5357c7dc3da2e006a42814ca980819ea265b6d537aba849","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_07c5357c7dc3da2e006a42814ca980819ea265b6d537aba849","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"5","item_id":"msg_07c5357c7dc3da2e006a42814ca980819ea265b6d537aba849","logprobs":[],"obfuscation":"YTrlWUPj7wyc82p","output_index":0,"sequence_number":4} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" +","item_id":"msg_07c5357c7dc3da2e006a42814ca980819ea265b6d537aba849","logprobs":[],"obfuscation":"QPxBS8WOXAtUtK","output_index":0,"sequence_number":5} + + + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_07c5357c7dc3da2e006a42814ca980819ea265b6d537aba849","logprobs":[],"obfuscation":"yV5Puh6TfTgQn8l","output_index":0,"sequence_number":6} - data: {"id":"chatcmpl-Dr7JLEgWKe4HaoZuZknJ5pxr77bmg","object":"chat.completion.chunk","created":1781551859,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_dca9632699","choices":[{"index":0,"delta":{"content":"5"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"tVpBbW3Tfu"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JLEgWKe4HaoZuZknJ5pxr77bmg","object":"chat.completion.chunk","created":1781551859,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_dca9632699","choices":[{"index":0,"delta":{"content":" - +"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"3CkyVZ0u9"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"5","item_id":"msg_07c5357c7dc3da2e006a42814ca980819ea265b6d537aba849","logprobs":[],"obfuscation":"oT7zA7iTjkSZt09","output_index":0,"sequence_number":7} - data: {"id":"chatcmpl-Dr7JLEgWKe4HaoZuZknJ5pxr77bmg","object":"chat.completion.chunk","created":1781551859,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_dca9632699","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"WMChnZYQ5T"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" equals","item_id":"msg_07c5357c7dc3da2e006a42814ca980819ea265b6d537aba849","logprobs":[],"obfuscation":"nVemc3UKK","output_index":0,"sequence_number":8} - data: {"id":"chatcmpl-Dr7JLEgWKe4HaoZuZknJ5pxr77bmg","object":"chat.completion.chunk","created":1781551859,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_dca9632699","choices":[{"index":0,"delta":{"content":"5"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"2pqAwAA6v1"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JLEgWKe4HaoZuZknJ5pxr77bmg","object":"chat.completion.chunk","created":1781551859,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_dca9632699","choices":[{"index":0,"delta":{"content":" - equals"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"N2aE"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_07c5357c7dc3da2e006a42814ca980819ea265b6d537aba849","logprobs":[],"obfuscation":"n6acbEQ2pCz4FRN","output_index":0,"sequence_number":9} - data: {"id":"chatcmpl-Dr7JLEgWKe4HaoZuZknJ5pxr77bmg","object":"chat.completion.chunk","created":1781551859,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_dca9632699","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"csTdMc6FmU"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"10","item_id":"msg_07c5357c7dc3da2e006a42814ca980819ea265b6d537aba849","logprobs":[],"obfuscation":"5BZ9mXaBMIvCIu","output_index":0,"sequence_number":10} - data: {"id":"chatcmpl-Dr7JLEgWKe4HaoZuZknJ5pxr77bmg","object":"chat.completion.chunk","created":1781551859,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_dca9632699","choices":[{"index":0,"delta":{"content":"10"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"PwlPKqkPH"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JLEgWKe4HaoZuZknJ5pxr77bmg","object":"chat.completion.chunk","created":1781551859,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_dca9632699","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"8mp3xBf12W"} + data: {"type":"response.output_text.delta","content_index":0,"delta":".","item_id":"msg_07c5357c7dc3da2e006a42814ca980819ea265b6d537aba849","logprobs":[],"obfuscation":"uh2o5j0dplKuYB4","output_index":0,"sequence_number":11} - data: {"id":"chatcmpl-Dr7JLEgWKe4HaoZuZknJ5pxr77bmg","object":"chat.completion.chunk","created":1781551859,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_dca9632699","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"Fm8Mi"} + event: response.output_text.done + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_07c5357c7dc3da2e006a42814ca980819ea265b6d537aba849","logprobs":[],"output_index":0,"sequence_number":12,"text":"5 + + 5 equals 10."} - data: {"id":"chatcmpl-Dr7JLEgWKe4HaoZuZknJ5pxr77bmg","object":"chat.completion.chunk","created":1781551859,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_dca9632699","choices":[],"usage":{"prompt_tokens":14,"completion_tokens":8,"total_tokens":22,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"uMUDc4vFTEK"} + event: response.content_part.done - data: [DONE] + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_07c5357c7dc3da2e006a42814ca980819ea265b6d537aba849","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"5 + + 5 equals 10."},"sequence_number":13} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_07c5357c7dc3da2e006a42814ca980819ea265b6d537aba849","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"5 + + 5 equals 10."}],"role":"assistant"},"output_index":0,"sequence_number":14} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_07c5357c7dc3da2e006a42814c2e20819ea839bc6446b7b105","object":"response","created_at":1782743372,"status":"completed","background":false,"completed_at":1782743372,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":100,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_07c5357c7dc3da2e006a42814ca980819ea265b6d537aba849","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"5 + + 5 equals 10."}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":14,"input_tokens_details":{"cached_tokens":0},"output_tokens":9,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":23},"user":null,"metadata":{}},"sequence_number":15} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe113f93e5b3-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:30:59 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359fbbcf4760a9-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:32 GMT openai-organization: - braintrust-data openai-processing-ms: - - '210' + - '155' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=_ar.X_wL2VX0PfILPixscqp6dcOktohAtZomzTY9xzQ-1781551859.3948596-1.0.1.1-fvPglUjlN0B45gUv9svcYjBsjaaPLevS5HGwukmIvu9.4qTulyBSkHKw398ng6O14QE6LSsaAyvBB5lct5PRym8_i.OmGjSpc9FKzXxll5h.vehNArGOimKEDsXuAZif; + - __cf_bm=BroEJA3Kw0vK3qmgM_K41i4txrr8MvVRFDfwyCvj.Lo-1782743372.1229792-1.0.1.1-wMr6Z7kzo2r8fSOYCySMGiFKZyUo92u77wzJXUI3.yekABnv3gimXpO99uHYrDpePIELw3yGCMbduzRYDZOjnyy.4a3EzHpQN6Bh_x9bPMkeAh8HYyCI4vTwpFFYwl9y; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:59 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999995' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:32 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_990353acdabf4544bfc3d9c0fafd002b + - 11ed3cfa-2da7-4550-ae26-6d91502c1ca9 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream_events_direct_async_for_compatibility.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream_events_direct_async_for_compatibility.yaml new file mode 100644 index 00000000..183f1c76 --- /dev/null +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream_events_direct_async_for_compatibility.yaml @@ -0,0 +1,168 @@ +interactions: +- request: + body: '{"input":[{"role":"user","content":"What is 3+7?"}],"max_output_tokens":50,"model":"gpt-4o-mini","stream":true}' + headers: + accept: + - application/json + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '111' + content-type: + - application/json + host: + - api.openai.com + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: + - arm64 + x-stainless-async: + - async:asyncio + x-stainless-lang: + - python + x-stainless-os: + - MacOS + x-stainless-package-version: + - 2.44.0 + x-stainless-read-timeout: + - '600' + x-stainless-retry-count: + - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 + method: POST + uri: https://api.openai.com/v1/responses + response: + body: + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_0bf91008b6444777006a42828d154081a3b5437cafda73715a","object":"response","created_at":1782743693,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_0bf91008b6444777006a42828d154081a3b5437cafda73715a","object":"response","created_at":1782743693,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_0bf91008b6444777006a42828e55d881a3bbad598774c55891","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_0bf91008b6444777006a42828e55d881a3bbad598774c55891","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"3","item_id":"msg_0bf91008b6444777006a42828e55d881a3bbad598774c55891","logprobs":[],"obfuscation":"TdLIndgHbAoEGdT","output_index":0,"sequence_number":4} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" +","item_id":"msg_0bf91008b6444777006a42828e55d881a3bbad598774c55891","logprobs":[],"obfuscation":"CJtphrEiFNTdaz","output_index":0,"sequence_number":5} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_0bf91008b6444777006a42828e55d881a3bbad598774c55891","logprobs":[],"obfuscation":"ZVNm9HBZgs9Hjnm","output_index":0,"sequence_number":6} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"7","item_id":"msg_0bf91008b6444777006a42828e55d881a3bbad598774c55891","logprobs":[],"obfuscation":"yozMiO01WkMNR5z","output_index":0,"sequence_number":7} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" equals","item_id":"msg_0bf91008b6444777006a42828e55d881a3bbad598774c55891","logprobs":[],"obfuscation":"Xgspm7l9s","output_index":0,"sequence_number":8} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_0bf91008b6444777006a42828e55d881a3bbad598774c55891","logprobs":[],"obfuscation":"EaF4Q4SEI94VQQj","output_index":0,"sequence_number":9} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"10","item_id":"msg_0bf91008b6444777006a42828e55d881a3bbad598774c55891","logprobs":[],"obfuscation":"ArYoR6APNeEdhG","output_index":0,"sequence_number":10} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":".","item_id":"msg_0bf91008b6444777006a42828e55d881a3bbad598774c55891","logprobs":[],"obfuscation":"gdSInDrJVWQXcfA","output_index":0,"sequence_number":11} + + + event: response.output_text.done + + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_0bf91008b6444777006a42828e55d881a3bbad598774c55891","logprobs":[],"output_index":0,"sequence_number":12,"text":"3 + + 7 equals 10."} + + + event: response.content_part.done + + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_0bf91008b6444777006a42828e55d881a3bbad598774c55891","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"3 + + 7 equals 10."},"sequence_number":13} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_0bf91008b6444777006a42828e55d881a3bbad598774c55891","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"3 + + 7 equals 10."}],"role":"assistant"},"output_index":0,"sequence_number":14} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_0bf91008b6444777006a42828d154081a3b5437cafda73715a","object":"response","created_at":1782743693,"status":"completed","background":false,"completed_at":1782743696,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_0bf91008b6444777006a42828e55d881a3bbad598774c55891","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"3 + + 7 equals 10."}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":14,"input_tokens_details":{"cached_tokens":0},"output_tokens":9,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":23},"user":null,"metadata":{}},"sequence_number":15} + + + ' + headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray + - CF-Ray + alt-svc: + - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a790ec744c9b-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:34:53 GMT + openai-organization: + - braintrust-data + openai-processing-ms: + - '492' + openai-project: + - proj_vsCSXafhhByzWOThMrJcZiw9 + openai-version: + - '2020-10-01' + server: + - cloudflare + set-cookie: + - __cf_bm=LS.odhrycXOph8jjLtDTB55t33zzLFsOlGb0a.Mgm70-1782743692.9430025-1.0.1.1-fPcttsN_nleU1TJnaSwVYU8QsDZvn.mnr06Ruwuc3bYACE5qU0r8.LIn7xuu1KWZxRDKBb7zfXRhX.xbN5VHagUNGTUqFJrBRifMMW7N9y8Hh5_jLkZooqs2qUoJ6g4q; + HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, + 29 Jun 2026 15:04:53 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff + x-request-id: + - 966a9903-3890-45af-a5e3-27e99d72c30b + status: + code: 200 + message: OK +version: 1 diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream_structured_output.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream_structured_output.yaml index 283c0e4e..f4d18549 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream_structured_output.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream_structured_output.yaml @@ -1,149 +1,181 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Create a product: wireless mouse - for $29.99"}],"model":"gpt-4o-mini","max_completion_tokens":200,"stream":true,"stream_options":{"include_usage":true},"tool_choice":"required","tools":[{"type":"function","function":{"name":"final_result","description":"The - final response which ends this conversation","parameters":{"properties":{"name":{"type":"string"},"price":{"type":"number"}},"required":["name","price"],"type":"object","additionalProperties":false},"strict":true}}]}' + body: '{"input":[{"role":"user","content":"Create a product: wireless mouse for + $29.99"}],"max_output_tokens":200,"model":"gpt-4o-mini","stream":true,"tool_choice":"required","tools":[{"name":"final_result","parameters":{"properties":{"name":{"type":"string"},"price":{"type":"number"}},"required":["name","price"],"type":"object","additionalProperties":false},"type":"function","description":"The + final response which ends this conversation","strict":true}]}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '512' - Content-Type: + content-length: + - '452' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7JY1I1VREtm7cL8V7SNS52ZWucH","object":"chat.completion.chunk","created":1781551872,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_d07f82f293","choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"index":0,"id":"call_fiZo7Zdu0leq8PHhxQYh8Kej","type":"function","function":{"name":"final_result","arguments":""}}],"refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"vhk"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_01c52bc562ba39dd006a42815dd108819cb47af2f239d7c621","object":"response","created_at":1782743389,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":200,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"required","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[{"type":"function","description":"The + final response which ends this conversation","name":"final_result","parameters":{"properties":{"name":{"type":"string"},"price":{"type":"number"}},"required":["name","price"],"type":"object","additionalProperties":false},"strict":true}],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_01c52bc562ba39dd006a42815dd108819cb47af2f239d7c621","object":"response","created_at":1782743389,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":200,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"required","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[{"type":"function","description":"The + final response which ends this conversation","name":"final_result","parameters":{"properties":{"name":{"type":"string"},"price":{"type":"number"}},"required":["name","price"],"type":"object","additionalProperties":false},"strict":true}],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","type":"function_call","status":"in_progress","arguments":"","call_id":"call_Agq3EV38tt8LFrVC83PM7dWR","name":"final_result"},"output_index":0,"sequence_number":2} + + + event: response.function_call_arguments.delta + + data: {"type":"response.function_call_arguments.delta","delta":"{\"","item_id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","obfuscation":"fbm660dEErHMmF","output_index":0,"sequence_number":3} + + + event: response.function_call_arguments.delta + + data: {"type":"response.function_call_arguments.delta","delta":"name","item_id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","obfuscation":"yN5WOzjih2rm","output_index":0,"sequence_number":4} + + + event: response.function_call_arguments.delta + + data: {"type":"response.function_call_arguments.delta","delta":"\":\"","item_id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","obfuscation":"sTbeO92nkZI6G","output_index":0,"sequence_number":5} + + event: response.function_call_arguments.delta - data: {"id":"chatcmpl-Dr7JY1I1VREtm7cL8V7SNS52ZWucH","object":"chat.completion.chunk","created":1781551872,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_d07f82f293","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"function":{"arguments":"{\""}}]},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"8hPuBC2ulL8lCH"} + data: {"type":"response.function_call_arguments.delta","delta":"Wireless","item_id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","obfuscation":"PRVRoDzh","output_index":0,"sequence_number":6} - data: {"id":"chatcmpl-Dr7JY1I1VREtm7cL8V7SNS52ZWucH","object":"chat.completion.chunk","created":1781551872,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_d07f82f293","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"function":{"arguments":"name"}}]},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"dbPiZ5Kk8vYVo"} + event: response.function_call_arguments.delta + data: {"type":"response.function_call_arguments.delta","delta":" Mouse","item_id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","obfuscation":"zkrvnY67EE","output_index":0,"sequence_number":7} - data: {"id":"chatcmpl-Dr7JY1I1VREtm7cL8V7SNS52ZWucH","object":"chat.completion.chunk","created":1781551872,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_d07f82f293","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"function":{"arguments":"\":\""}}]},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"sJqnZXdLHyxE"} + event: response.function_call_arguments.delta - data: {"id":"chatcmpl-Dr7JY1I1VREtm7cL8V7SNS52ZWucH","object":"chat.completion.chunk","created":1781551872,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_d07f82f293","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"function":{"arguments":"Wireless"}}]},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"mE4dBSXMq"} + data: {"type":"response.function_call_arguments.delta","delta":"\",\"","item_id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","obfuscation":"q84NLMya4DBhQ","output_index":0,"sequence_number":8} - data: {"id":"chatcmpl-Dr7JY1I1VREtm7cL8V7SNS52ZWucH","object":"chat.completion.chunk","created":1781551872,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_d07f82f293","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"function":{"arguments":" - Mouse"}}]},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"Ik0ppp7BqLW"} + event: response.function_call_arguments.delta + data: {"type":"response.function_call_arguments.delta","delta":"price","item_id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","obfuscation":"EJBqALzidk0","output_index":0,"sequence_number":9} - data: {"id":"chatcmpl-Dr7JY1I1VREtm7cL8V7SNS52ZWucH","object":"chat.completion.chunk","created":1781551872,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_d07f82f293","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"function":{"arguments":"\",\""}}]},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"aRsziLI3CnAb"} + event: response.function_call_arguments.delta - data: {"id":"chatcmpl-Dr7JY1I1VREtm7cL8V7SNS52ZWucH","object":"chat.completion.chunk","created":1781551872,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_d07f82f293","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"function":{"arguments":"price"}}]},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"7OkQ9tEm5NIJ"} + data: {"type":"response.function_call_arguments.delta","delta":"\":","item_id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","obfuscation":"YuzU3SqjXxZO0i","output_index":0,"sequence_number":10} - data: {"id":"chatcmpl-Dr7JY1I1VREtm7cL8V7SNS52ZWucH","object":"chat.completion.chunk","created":1781551872,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_d07f82f293","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"function":{"arguments":"\":"}}]},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"SgUi2rbfgrhmb3"} + event: response.function_call_arguments.delta + data: {"type":"response.function_call_arguments.delta","delta":"29","item_id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","obfuscation":"STtorPPk0KMC0U","output_index":0,"sequence_number":11} - data: {"id":"chatcmpl-Dr7JY1I1VREtm7cL8V7SNS52ZWucH","object":"chat.completion.chunk","created":1781551872,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_d07f82f293","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"function":{"arguments":"29"}}]},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"G20S7NUmG1oXFCy"} + event: response.function_call_arguments.delta - data: {"id":"chatcmpl-Dr7JY1I1VREtm7cL8V7SNS52ZWucH","object":"chat.completion.chunk","created":1781551872,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_d07f82f293","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"function":{"arguments":"."}}]},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":""} + data: {"type":"response.function_call_arguments.delta","delta":".","item_id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","obfuscation":"2vT6u6aodH1aysI","output_index":0,"sequence_number":12} - data: {"id":"chatcmpl-Dr7JY1I1VREtm7cL8V7SNS52ZWucH","object":"chat.completion.chunk","created":1781551872,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_d07f82f293","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"function":{"arguments":"99"}}]},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"WkW2bCQV2ImqURA"} + event: response.function_call_arguments.delta + data: {"type":"response.function_call_arguments.delta","delta":"99","item_id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","obfuscation":"c0QqzTPJmgw8eb","output_index":0,"sequence_number":13} - data: {"id":"chatcmpl-Dr7JY1I1VREtm7cL8V7SNS52ZWucH","object":"chat.completion.chunk","created":1781551872,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_d07f82f293","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"function":{"arguments":"}"}}]},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":""} + event: response.function_call_arguments.delta - data: {"id":"chatcmpl-Dr7JY1I1VREtm7cL8V7SNS52ZWucH","object":"chat.completion.chunk","created":1781551872,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_d07f82f293","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"tool_calls"}],"usage":null,"obfuscation":"mn6EJ5gP30Tm8xd"} + data: {"type":"response.function_call_arguments.delta","delta":"}","item_id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","obfuscation":"0pKEqk4kgoLztHx","output_index":0,"sequence_number":14} - data: {"id":"chatcmpl-Dr7JY1I1VREtm7cL8V7SNS52ZWucH","object":"chat.completion.chunk","created":1781551872,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_d07f82f293","choices":[],"usage":{"prompt_tokens":60,"completion_tokens":21,"total_tokens":81,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"tWzTSAXYoG"} + event: response.function_call_arguments.done + data: {"type":"response.function_call_arguments.done","arguments":"{\"name\":\"Wireless + Mouse\",\"price\":29.99}","item_id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","output_index":0,"sequence_number":15} - data: [DONE] + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","type":"function_call","status":"completed","arguments":"{\"name\":\"Wireless + Mouse\",\"price\":29.99}","call_id":"call_Agq3EV38tt8LFrVC83PM7dWR","name":"final_result"},"output_index":0,"sequence_number":16} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_01c52bc562ba39dd006a42815dd108819cb47af2f239d7c621","object":"response","created_at":1782743389,"status":"completed","background":false,"completed_at":1782743390,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":200,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"fc_01c52bc562ba39dd006a42815e4cd4819c813f919a9c3b37b7","type":"function_call","status":"completed","arguments":"{\"name\":\"Wireless + Mouse\",\"price\":29.99}","call_id":"call_Agq3EV38tt8LFrVC83PM7dWR","name":"final_result"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"required","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[{"type":"function","description":"The + final response which ends this conversation","name":"final_result","parameters":{"properties":{"name":{"type":"string"},"price":{"type":"number"}},"required":["name","price"],"type":"object","additionalProperties":false},"strict":true}],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":63,"input_tokens_details":{"cached_tokens":0},"output_tokens":13,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":76},"user":null,"metadata":{}},"sequence_number":17} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe64e9d78ea1-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:31:13 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a029e949aa71-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:49 GMT openai-organization: - braintrust-data openai-processing-ms: - - '562' + - '170' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=Tch6STVXHaqXofVHicZ9vik8jDFodcQchdPvJ07EA.U-1781551872.781955-1.0.1.1-x7GYXRRmsBrgRVTf5LvAuMZBG49C5pXC.c8Z3yAYJx5eu7LN6aFO9o1hR2M_VV1nLu1PPFjkyLw.1.BLy2o_Yr7PgxuhKaSFBBItH8GJdjH8leJcBV9X1begzV1k7dCo; + - __cf_bm=1OOwDastzZJekDugtYcBRph330u3hHTYRzeKPDjaVkU-1782743389.7483408-1.0.1.1-AmABMUb8ilYfNsyVoeJyYLBbBWjlPOKSWq55L5kbfg316_gGneGc2FIcKC63uXfaC3RFHI1lumblzbcLNhu.HInikq1mjtLBa1GIq_2inKCMMJJzZ7zNbUo7d2RqP7QW; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:13 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999985' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:49 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_b46d412a7b64456ba128f0a261c9ad45 + - cb8c4002-b46c-4076-bb13-e37b4af31ec9 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream_sync.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream_sync.yaml index 24d07e8a..83e1b808 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream_sync.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_stream_sync.yaml @@ -1,136 +1,167 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Count from 1 to 3"}],"model":"gpt-4o-mini","max_completion_tokens":100,"stream":true,"stream_options":{"include_usage":true}}' + body: '{"input":[{"role":"user","content":"Count from 1 to 3"}],"max_output_tokens":100,"model":"gpt-4o-mini","stream":true}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '164' - Content-Type: + content-length: + - '117' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7JKmtgNmzqWToDuBN0Odzgnd3Cj","object":"chat.completion.chunk","created":1781551858,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"Lgpd87Ogg"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_044e6cf3a5dec6b4006a42814b4f60819c8e6df857a1738f33","object":"response","created_at":1782743371,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":100,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_044e6cf3a5dec6b4006a42814b4f60819c8e6df857a1738f33","object":"response","created_at":1782743371,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":100,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_044e6cf3a5dec6b4006a42814bd744819cb894617a19cb79f4","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_044e6cf3a5dec6b4006a42814bd744819cb894617a19cb79f4","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"1","item_id":"msg_044e6cf3a5dec6b4006a42814bd744819cb894617a19cb79f4","logprobs":[],"obfuscation":"iwDkR0RXFBnMnaW","output_index":0,"sequence_number":4} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_044e6cf3a5dec6b4006a42814bd744819cb894617a19cb79f4","logprobs":[],"obfuscation":"NmRU9JCrFQe0zlG","output_index":0,"sequence_number":5} + + + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_044e6cf3a5dec6b4006a42814bd744819cb894617a19cb79f4","logprobs":[],"obfuscation":"u5YU3tfwpbJmhTI","output_index":0,"sequence_number":6} - data: {"id":"chatcmpl-Dr7JKmtgNmzqWToDuBN0Odzgnd3Cj","object":"chat.completion.chunk","created":1781551858,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"uZ6vBKZx61"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JKmtgNmzqWToDuBN0Odzgnd3Cj","object":"chat.completion.chunk","created":1781551858,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"k9mqY3D6bn"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"2","item_id":"msg_044e6cf3a5dec6b4006a42814bd744819cb894617a19cb79f4","logprobs":[],"obfuscation":"nQcMj5wyoIMmAMm","output_index":0,"sequence_number":7} - data: {"id":"chatcmpl-Dr7JKmtgNmzqWToDuBN0Odzgnd3Cj","object":"chat.completion.chunk","created":1781551858,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"OuHeCUvZl3"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_044e6cf3a5dec6b4006a42814bd744819cb894617a19cb79f4","logprobs":[],"obfuscation":"IlMzVrTJwKHS3zl","output_index":0,"sequence_number":8} - data: {"id":"chatcmpl-Dr7JKmtgNmzqWToDuBN0Odzgnd3Cj","object":"chat.completion.chunk","created":1781551858,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"FLnOGQazIq"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JKmtgNmzqWToDuBN0Odzgnd3Cj","object":"chat.completion.chunk","created":1781551858,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"JdtIo01SRw"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_044e6cf3a5dec6b4006a42814bd744819cb894617a19cb79f4","logprobs":[],"obfuscation":"TF0Dul99VeEAu08","output_index":0,"sequence_number":9} - data: {"id":"chatcmpl-Dr7JKmtgNmzqWToDuBN0Odzgnd3Cj","object":"chat.completion.chunk","created":1781551858,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"jkr12mutc5"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"3","item_id":"msg_044e6cf3a5dec6b4006a42814bd744819cb894617a19cb79f4","logprobs":[],"obfuscation":"vryGgtrr0Ab8HsZ","output_index":0,"sequence_number":10} - data: {"id":"chatcmpl-Dr7JKmtgNmzqWToDuBN0Odzgnd3Cj","object":"chat.completion.chunk","created":1781551858,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"ptZf2tW4O8"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JKmtgNmzqWToDuBN0Odzgnd3Cj","object":"chat.completion.chunk","created":1781551858,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"RnTrwAxvOf"} + data: {"type":"response.output_text.delta","content_index":0,"delta":".","item_id":"msg_044e6cf3a5dec6b4006a42814bd744819cb894617a19cb79f4","logprobs":[],"obfuscation":"diqMA4GtL1CaP4H","output_index":0,"sequence_number":11} - data: {"id":"chatcmpl-Dr7JKmtgNmzqWToDuBN0Odzgnd3Cj","object":"chat.completion.chunk","created":1781551858,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"zuI1f"} + event: response.output_text.done + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_044e6cf3a5dec6b4006a42814bd744819cb894617a19cb79f4","logprobs":[],"output_index":0,"sequence_number":12,"text":"1, + 2, 3."} - data: {"id":"chatcmpl-Dr7JKmtgNmzqWToDuBN0Odzgnd3Cj","object":"chat.completion.chunk","created":1781551858,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[],"usage":{"prompt_tokens":14,"completion_tokens":8,"total_tokens":22,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"ryRe8jpN2zd"} + event: response.content_part.done - data: [DONE] + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_044e6cf3a5dec6b4006a42814bd744819cb894617a19cb79f4","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."},"sequence_number":13} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_044e6cf3a5dec6b4006a42814bd744819cb894617a19cb79f4","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"},"output_index":0,"sequence_number":14} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_044e6cf3a5dec6b4006a42814b4f60819c8e6df857a1738f33","object":"response","created_at":1782743371,"status":"completed","background":false,"completed_at":1782743371,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":100,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_044e6cf3a5dec6b4006a42814bd744819cb894617a19cb79f4","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":14,"input_tokens_details":{"cached_tokens":0},"output_tokens":9,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":23},"user":null,"metadata":{}},"sequence_number":15} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe0dbefa74a7-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:30:59 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359fb66c12aab3-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:31 GMT openai-organization: - braintrust-data openai-processing-ms: - - '250' + - '120' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=CkoMXvIWjAvvorOhoAQvc4T5nPgdRfyt9sWR5JDnGvQ-1781551858.8319483-1.0.1.1-8mpNmOw9sO5MkJRsJ5vHUZHnv7ubGZEIFMYRjfjj._34bqFS3Yp4im8.Uk.MsiX8HUndq8WuNXCRZNo8OS49GXXUpvuOWiLYxdEULzFYZXTmr6R01kDmNERv5Q0_CvAR; + - __cf_bm=XAP5ifJoeJ2Qv9UmF.bjG3TPRhFE.FadD9VszbBXJCo-1782743371.2635143-1.0.1.1-p5vzisSQpKmVE34G0drHPiwZHW4N_lZt6jOcQA8jZ_7wvDtUgQo4Kp.Dk2Bx22Zp9roPWV62VbnY9Lo_g1WihacCs0Ou6Wp8xi8Jb7BLWGkQ.wx3B5EeCmWLMhM536w5; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:59 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999992' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:31 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_b7bd400c73634de9aa7a54bad010fbeb + - e54e7696-e7a0-49cf-a0bc-d31b71a5ef58 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_sync.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_sync.yaml index 65658689..79685ff0 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_sync.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_run_sync.yaml @@ -1,94 +1,110 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What is 2+2? Answer with just the - number."}],"model":"gpt-4o-mini","max_completion_tokens":50,"stream":false}' + body: '{"input":[{"role":"user","content":"What is 2+2? Answer with just the number."}],"max_output_tokens":50,"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '148' - Content-Type: + content-length: + - '141' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7IyJ7zrJbQZrNN0nNwAMjgQ4acj\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551836,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"4\",\n \"refusal\": null,\n - \ \"annotations\": []\n },\n \"logprobs\": null,\n \"finish_reason\": - \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 20,\n \"completion_tokens\": - 1,\n \"total_tokens\": 21,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_d07f82f293\"\n}\n" + string: "{\n \"id\": \"resp_0b2a4eae23aabc83006a42812f814c8191bc16b3a0d4fcf255\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743343,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743344,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 50,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_0b2a4eae23aabc83006a42813013e4819188b68164bd39713c\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"4\"\n }\n ],\n + \ \"role\": \"assistant\"\n }\n ],\n \"parallel_tool_calls\": true,\n + \ \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 20,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 2,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 22\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fd7ff8d4ec6f-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:36 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f088a91abf1-YYZ + connection: + - keep-alive content-length: - - '807' + - '1937' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:04 GMT openai-organization: - braintrust-data openai-processing-ms: - - '421' + - '742' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=aDWV6D6thbwWRRBxMIr2SQ_sOGwL_Hl5icpXbMlVKx0-1781551836.1587887-1.0.1.1-P19SngZ3lwQj.ry992sWsmg.dElXRVNgHlLGWaMI8C9RwmhwIU2PBNDw2c3whl26eo9Ds..3FXeskbmXAdVZmFvVBwQdHW5QBbOv3LhJoUrxZejlkvez.Zlxt0fd9NPu; + - __cf_bm=2ZSNVARON32J5Nt7nkAOZFBi_2DwmT5CVrkkhPd2xGM-1782743343.4445376-1.0.1.1-ST.MnfL5a1g..0iECBvcWkav8CYjmr4gGoFN1DFPKKgxbWzbtlr8RsMMhAUpxDPR3Az40EJ8x2_zDao4fTKC.me9O0gqjDnI_jCKFZ7NS3NqNUlrTlj9UFn8gf8B1uaJ; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:36 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:04 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -96,13 +112,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999985' + - '149999962' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_40fe543072d4424da3da487c7a466861 + - 46fc5383-5942-425d-b922-3e5af77b3fc7 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_stream_buffer_pattern_early_return.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_stream_buffer_pattern_early_return.yaml index 122cf9f6..6c9a9f59 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_stream_buffer_pattern_early_return.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_stream_buffer_pattern_early_return.yaml @@ -1,156 +1,197 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Count from 1 to 5"}],"model":"gpt-4o-mini","max_completion_tokens":100,"stream":true,"stream_options":{"include_usage":true}}' + body: '{"input":[{"role":"user","content":"Count from 1 to 5"}],"max_output_tokens":100,"model":"gpt-4o-mini","stream":true}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '164' - Content-Type: + content-length: + - '117' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"waFbW1KqY"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_04fb35f890011ceb006a428152889c819ea9db7dc80d474838","object":"response","created_at":1782743378,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":100,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_04fb35f890011ceb006a428152889c819ea9db7dc80d474838","object":"response","created_at":1782743378,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":100,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"1","item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","logprobs":[],"obfuscation":"RrCewzRH3DZiUe9","output_index":0,"sequence_number":4} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","logprobs":[],"obfuscation":"LKLnC9IdIJM258Q","output_index":0,"sequence_number":5} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","logprobs":[],"obfuscation":"P3GWhXiJpTezvS2","output_index":0,"sequence_number":6} + + + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"2","item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","logprobs":[],"obfuscation":"Hu6UTEXiacpIw5S","output_index":0,"sequence_number":7} - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"FAWaTfjWlk"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"sSuHJ78Pz5"} + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","logprobs":[],"obfuscation":"lfRwhLL7RqeqopC","output_index":0,"sequence_number":8} - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"GMd1DBd0or"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","logprobs":[],"obfuscation":"SktweODmjV98Qhp","output_index":0,"sequence_number":9} - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"S0rGfGROCv"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"12RxmGp1oL"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"3","item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","logprobs":[],"obfuscation":"0ijXURI7C0CdjqD","output_index":0,"sequence_number":10} - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"YQuRniiRSu"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","logprobs":[],"obfuscation":"UDGEgZ8peMEoDYg","output_index":0,"sequence_number":11} - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"47OK5oLaX9"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"BStLF5bW76"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","logprobs":[],"obfuscation":"OTbAwSH1ZmkJZz8","output_index":0,"sequence_number":12} - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"UJcIhS0gzF"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"4","item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","logprobs":[],"obfuscation":"gWgvfnFGqieemzW","output_index":0,"sequence_number":13} - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"qt8sYRwPhA"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"lk0AUA5wJa"} + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","logprobs":[],"obfuscation":"WAvwuOGbOnpL8Ca","output_index":0,"sequence_number":14} - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"V22qjSRoIY"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","logprobs":[],"obfuscation":"tqmQh1MLbewJP7t","output_index":0,"sequence_number":15} - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"5"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"3IHxfiaBBX"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"bY3XEMHrOd"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"5","item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","logprobs":[],"obfuscation":"z6EV5yWvGjpF7jz","output_index":0,"sequence_number":16} - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"ul2WS"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":".","item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","logprobs":[],"obfuscation":"VmC1iVpPTLL9B4J","output_index":0,"sequence_number":17} - data: {"id":"chatcmpl-Dr7JO1w4CXVg7cNKJ5LeaWLXPwtAW","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[],"usage":{"prompt_tokens":14,"completion_tokens":14,"total_tokens":28,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"c6UF0ILKgh"} + event: response.output_text.done - data: [DONE] + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","logprobs":[],"output_index":0,"sequence_number":18,"text":"1, + 2, 3, 4, 5."} + + + event: response.content_part.done + + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3, 4, 5."},"sequence_number":19} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3, 4, 5."}],"role":"assistant"},"output_index":0,"sequence_number":20} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_04fb35f890011ceb006a428152889c819ea9db7dc80d474838","object":"response","created_at":1782743378,"status":"completed","background":false,"completed_at":1782743379,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":100,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_04fb35f890011ceb006a428152df70819eaf85531e06e5bc58","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3, 4, 5."}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":14,"input_tokens_details":{"cached_tokens":0},"output_tokens":15,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":29},"user":null,"metadata":{}},"sequence_number":21} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe25fad5c0f6-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:31:03 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359fe3083fab8e-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:38 GMT openai-organization: - braintrust-data openai-processing-ms: - - '396' + - '148' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=MHM6aAnvNOxFms669HUuxUZRI2EvTe3NXteKaNHmkWI-1781551862.7256079-1.0.1.1-ByPbZNAxxGDX9w22HP9rM.2OVydPg86lmmQ9Y2XllgFUb7iaDDb74DtRmj4UQnHwXiMAOVfx.Dp4SiLqZ81gQ.bI7P8j.hmP6P20PeXe02QFF3qjF6I8kT7TAc9JQ8rr; + - __cf_bm=vNOUkvEcmng_jG0evpwvJSATYqiZdN8xFeYPMpSQgyI-1782743378.4033349-1.0.1.1-ua0kpYVv5_bmHKxtHWdociAl9T51RSF.5X3TO7zFWMfhSMGj13p7y2y_Hfxkni7_gAgBK3xJJpXSXzn7m5M1sICDRD1SULWTnm_gsRhuSlyYGP3ibsLgcQL_qpg7PF5b; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:03 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999992' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:38 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_01ee97d7770b45f08cf818e36c17752b + - b48e301a-14ff-4fb2-9907-c0cf8f18bb2d status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_stream_early_break.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_stream_early_break.yaml index cadd0c15..3ed585a3 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_stream_early_break.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_stream_early_break.yaml @@ -1,206 +1,376 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Count from 1 to 10"}],"model":"gpt-4o-mini","max_completion_tokens":100,"stream":true,"stream_options":{"include_usage":true}}' + body: '{"rows": [{"_is_merge": false, "context": {"caller_filename": "/Users/abhijeetprasad/.superset/worktrees/698022ff-26ce-4bd5-ac6d-5978cac9c633/pydantic-2.0-support/py/.nox/test_pydantic_ai_integration-latest/lib/python3.14/site-packages/pydantic_ai/direct.py", + "caller_functionname": "_consume_async_stream", "caller_lineno": 384}, "created": + "2026-06-29T14:29:32.801854+00:00", "id": "a087ea37-935d-4c3b-8f37-816ac8287e52", + "input": {"instrument": null, "messages": [{"kind": "request", "parts": [{"content": + "Count from 1 to 3", "part_kind": "user-prompt"}], "state": "complete", "timestamp": + null}], "model": "openai:gpt-4o-mini", "model_request_parameters": null, "model_settings": + null}, "log_id": "g", "metadata": {"model": "gpt-4o-mini", "provider": "openai"}, + "metrics": {"start": 1782743372.801853}, "project_id": "test-pydantic-ai-integration", + "root_span_id": "c7573ff017ba20b79156e2d4c30377ac", "span_attributes": {"exec_counter": + 62, "name": "model_request_stream", "type": "task"}, "span_id": "85d2045453d36d8b", + "span_parents": ["71764a5e557d248e"]}], "api_version": 2}' headers: Accept: - - application/json + - '*/*' Accept-Encoding: - - gzip, deflate + - gzip, deflate, zstd Connection: - keep-alive Content-Length: - - '165' + - '1083' + User-Agent: + - python-requests/2.34.2 + method: POST + uri: https://api.braintrust.dev/logs3 + response: + body: + string: '{"Code":"ForbiddenError","Message":"Missing read access to project_log + id test-pydantic-ai-integration, or the project_log does not exist [user_email=abhijeet@braintrustdata.com] + [user_org=abhi-test-org] [timestamp=1782743376.95]","InternalTraceId":"6a42815000000000444567b1737270e8","Path":"/logs3","Service":"api"}' + headers: + Connection: + - keep-alive Content-Type: + - application/json; charset=utf-8 + Date: + - Mon, 29 Jun 2026 14:29:36 GMT + Via: + - 1.1 fed71e13dd3ef284a041938d86b5a86e.cloudfront.net (CloudFront), 1.1 2f76b89b5b812e346fc5b368361bed3c.cloudfront.net + (CloudFront) + X-Amz-Cf-Id: + - c984KlJqh1KV7vvxycXEXgdfAkvZF-0NlYaJgjX5Q6Xe_ypFsNuOmA== + X-Amz-Cf-Pop: + - IAD61-P9 + - IAD89-P4 + X-Amzn-Trace-Id: + - Root=1-6a428150-14ec634802d137964b528f69;Parent=7be8eb7d9c3b623f;Sampled=0;Lineage=1:24be3d11:0 + X-Cache: + - Error from cloudfront + access-control-allow-credentials: + - 'true' + access-control-expose-headers: + - x-bt-cursor,x-bt-found-existing,x-bt-query-plan,x-bt-api-duration-ms,x-bt-brainstore-duration-ms,x-bt-internal-trace-id,x-bt-error-origin,x-bt-used-endpoint + cache-control: + - no-store, no-cache, must-revalidate, proxy-revalidate + content-length: + - '316' + etag: + - W/"13c-wlO4yYBAZmBTNa6fSRMfU/LVH0I" + expires: + - '0' + surrogate-control: + - no-store + vary: + - Origin, Accept-Encoding + x-amz-apigw-id: + - fukksELwIAMEvBw= + x-amzn-RequestId: + - 68666b9d-3a7a-4142-b0b1-b1901e89e5fe + x-bt-internal-trace-id: + - 6a42815000000000444567b1737270e8 + status: + code: 403 + message: Forbidden +- request: + body: '{"input":[{"role":"user","content":"Count from 1 to 10"}],"max_output_tokens":100,"model":"gpt-4o-mini","stream":true}' + headers: + accept: + - application/json + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '118' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"vPXozHdeF"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_068def20704d271a006a42814ffce8819186bf88a124c58c47","object":"response","created_at":1782743376,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":100,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_068def20704d271a006a42814ffce8819186bf88a124c58c47","object":"response","created_at":1782743376,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":100,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"Sure","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"PBBlsxMk1huD","output_index":0,"sequence_number":4} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"!","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"qUhpLqNNQWQlwCb","output_index":0,"sequence_number":5} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" Here","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"OzeEm5o7DuN","output_index":0,"sequence_number":6} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" you","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"b7FAoAdWKTFK","output_index":0,"sequence_number":7} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" go","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"h6EjuDEj7XDQU","output_index":0,"sequence_number":8} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":":\n\n","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"GCnm44IIJewET","output_index":0,"sequence_number":9} + + + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"1","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"THkX156bysspAK1","output_index":0,"sequence_number":10} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"Fn35ymk5H2"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"hAHTUo9wdx"} + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"gosv8eAyhtVcg1c","output_index":0,"sequence_number":11} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"8Sf8JKy2zE"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"loExrUOvRmnaqaW","output_index":0,"sequence_number":12} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"pV69Ed88qf"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"d0rvXFyxFb"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"2","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"5PxaXv4fuiYFk29","output_index":0,"sequence_number":13} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"5KF4vC0Zgc"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"Y4R8fj81V0h0eN3","output_index":0,"sequence_number":14} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"nTxeULa0BR"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"OCwZZwAnhj"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"m4wITgkKu18Jn2m","output_index":0,"sequence_number":15} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"R8hkvksjrp"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"3","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"X9omF07dtqodxhe","output_index":0,"sequence_number":16} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"PRDeZH3WDD"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"PxJKQ724fP"} + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"Nz84s46peuk87wO","output_index":0,"sequence_number":17} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"sLQSdrtIly"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"ZtwN8XFm2Emk10p","output_index":0,"sequence_number":18} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":"5"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"oprbamKgt2"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"BQUOmjA7iP"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"4","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"nQcJyVjBrDJQGo6","output_index":0,"sequence_number":19} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"I7IOB7K92X"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"zzt992DPByTHV7s","output_index":0,"sequence_number":20} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":"6"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"OMLE5lsSi7"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"nG0pE1OUmL"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"94lU8ARH5QPzWEE","output_index":0,"sequence_number":21} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"TAHViZRLMz"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"5","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"9zxrF9YahILdJ7K","output_index":0,"sequence_number":22} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":"7"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"973dvCuPrL"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"GM1rRrVt41"} + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"cWErIeVkbMIDTEY","output_index":0,"sequence_number":23} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"dWoUoyKP9U"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"1wKXttdTjs6qnT1","output_index":0,"sequence_number":24} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":"8"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"mGqLVFkhVt"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"qppixKgKGM"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"6","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"ImHnULJNMozRqgE","output_index":0,"sequence_number":25} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"8Zz0KmSBPD"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"5B9HIgE2KXyvMAj","output_index":0,"sequence_number":26} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":"9"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"DV1iBLOIXY"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"BCNOuEfAVI"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"JE3HEXqdNPebHuO","output_index":0,"sequence_number":27} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"p77hSfDKE7"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"7","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"OHAiaFz3PnZW6Dj","output_index":0,"sequence_number":28} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":"10"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"KWXWfln05"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"fM9mUEKryH"} + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"XqyVoygpugmdUfB","output_index":0,"sequence_number":29} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"KfT3B"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"0egLxifrdzSCCrp","output_index":0,"sequence_number":30} - data: {"id":"chatcmpl-Dr7JNgU6OaiyZEBfnVszeuGbcunEJ","object":"chat.completion.chunk","created":1781551861,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_6ba3ec5f0d","choices":[],"usage":{"prompt_tokens":14,"completion_tokens":29,"total_tokens":43,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"ERUcSBbx1J"} + event: response.output_text.delta - data: [DONE] + data: {"type":"response.output_text.delta","content_index":0,"delta":"8","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"WaB8g8tnx8M1LKK","output_index":0,"sequence_number":31} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"2r2iVXy1YHXokij","output_index":0,"sequence_number":32} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"vPAw2N3IoXsf8Ti","output_index":0,"sequence_number":33} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"9","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"K8dELRSvYi5k6qv","output_index":0,"sequence_number":34} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"g6ey0BE43wrNXFH","output_index":0,"sequence_number":35} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"A2tblNGBttMYAdJ","output_index":0,"sequence_number":36} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"10","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"qfT7VbDuiubi9t","output_index":0,"sequence_number":37} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":".","item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"obfuscation":"e7ynV5RXRKTFExb","output_index":0,"sequence_number":38} + + + event: response.output_text.done + + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","logprobs":[],"output_index":0,"sequence_number":39,"text":"Sure! + Here you go:\n\n1, 2, 3, 4, 5, 6, 7, 8, 9, 10."} + + + event: response.content_part.done + + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"Sure! + Here you go:\n\n1, 2, 3, 4, 5, 6, 7, 8, 9, 10."},"sequence_number":40} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"Sure! + Here you go:\n\n1, 2, 3, 4, 5, 6, 7, 8, 9, 10."}],"role":"assistant"},"output_index":0,"sequence_number":41} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_068def20704d271a006a42814ffce8819186bf88a124c58c47","object":"response","created_at":1782743376,"status":"completed","background":false,"completed_at":1782743376,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":100,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_068def20704d271a006a42815088708191a602c55c35dad408","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"Sure! + Here you go:\n\n1, 2, 3, 4, 5, 6, 7, 8, 9, 10."}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":14,"input_tokens_details":{"cached_tokens":0},"output_tokens":36,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":50},"user":null,"metadata":{}},"sequence_number":42} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe1c3c31ebb8-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:31:01 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359fd38a0eab04-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:36 GMT openai-organization: - braintrust-data openai-processing-ms: - - '229' + - '149' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=LMYREmWbstpC2Gn3B9l7AN.uNBsEadTbks5pjOwVAvM-1781551861.1608841-1.0.1.1-wPz_NC45OSGmcWc6k7FrxIia2PgF88mq7aEvFHMC.yXd4H.Hn3vzGJn5tQnSnsHZDcAoEnMZ8tv5t3oyjMtt.kS5MwdkViJSZxisWFXzwCtjyKjfYWAyX2gsD_APXXsK; + - __cf_bm=2.wX8lfoVCyAPoeqrA0bPOO5_oZ44LyqBC1U2v64pa0-1782743375.9267855-1.0.1.1-hI20BVzAJ5f.saeHeLvsyi_T3VT7xkT6qE0KJobbwV_qEeXoKcrSLCYD7uxVdoN4W_asdbdYnHrmlifinfX7IOLObEmutfeQyA9Izibu2SeYYq0wH3s2_bBpKdvLqKQl; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:01 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999992' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:36 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_1308442c09e544cf8a5ddec59a053fed + - bca44bec-9a4c-4692-9c86-31104e107a21 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_structured_output.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_structured_output.yaml index ddf52c44..eb9a7ae3 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_structured_output.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_structured_output.yaml @@ -1,99 +1,118 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What is 10 + 15?"}],"model":"gpt-4o-mini","max_completion_tokens":200,"stream":false,"tool_choice":"required","tools":[{"type":"function","function":{"name":"final_result","description":"The - final response which ends this conversation","parameters":{"properties":{"answer":{"type":"integer"},"explanation":{"type":"string"}},"required":["answer","explanation"],"type":"object","additionalProperties":false},"strict":true}}]}' + body: '{"input":[{"role":"user","content":"What is 10 + 15?"}],"max_output_tokens":200,"model":"gpt-4o-mini","stream":false,"tool_choice":"required","tools":[{"name":"final_result","parameters":{"properties":{"answer":{"type":"integer"},"explanation":{"type":"string"}},"required":["answer","explanation"],"type":"object","additionalProperties":false},"type":"function","description":"The + final response which ends this conversation","strict":true}]}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '463' - Content-Type: + content-length: + - '443' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JCaLcq1dGoO7ONQbW2ff0ZhbXT\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551850,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": null,\n \"tool_calls\": [\n {\n - \ \"id\": \"call_7tGgHlM2ZkE83dc6jE8hJvpY\",\n \"type\": - \"function\",\n \"function\": {\n \"name\": \"final_result\",\n - \ \"arguments\": \"{\\\"answer\\\":25,\\\"explanation\\\":\\\"The - result of adding 10 and 15 together is 25.\\\"}\"\n }\n }\n - \ ],\n \"refusal\": null,\n \"annotations\": []\n },\n - \ \"logprobs\": null,\n \"finish_reason\": \"tool_calls\"\n }\n - \ ],\n \"usage\": {\n \"prompt_tokens\": 57,\n \"completion_tokens\": - 32,\n \"total_tokens\": 89,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_1c420c5839\"\n}\n" + string: "{\n \"id\": \"resp_0c76243c71b27bf2006a42813e66c08192bbb5920d4a49f8ae\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743358,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743359,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 200,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"fc_0c76243c71b27bf2006a42813f41388192bcdbcfc077ec681e\",\n + \ \"type\": \"function_call\",\n \"status\": \"completed\",\n \"arguments\": + \"{\\\"answer\\\":25,\\\"explanation\\\":\\\"10 + 15 is calculated by simply + adding the two numbers together.\\\"}\",\n \"call_id\": \"call_DWcOhbvYe6asbHRCGdRgkDxW\",\n + \ \"name\": \"final_result\"\n }\n ],\n \"parallel_tool_calls\": + true,\n \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"required\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [\n {\n \"type\": \"function\",\n \"description\": + \"The final response which ends this conversation\",\n \"name\": \"final_result\",\n + \ \"parameters\": {\n \"properties\": {\n \"answer\": + {\n \"type\": \"integer\"\n },\n \"explanation\": + {\n \"type\": \"string\"\n }\n },\n \"required\": + [\n \"answer\",\n \"explanation\"\n ],\n \"type\": + \"object\",\n \"additionalProperties\": false\n },\n \"strict\": + true\n }\n ],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 60,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 24,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 84\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fdda88725d15-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:51 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f658ea8ac33-YYZ + connection: + - keep-alive content-length: - - '1147' + - '2470' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:19 GMT openai-organization: - braintrust-data openai-processing-ms: - - '759' + - '1526' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=Sco63LJ1PMbeleq9TTm58Y1D_OVxYFuROBcUXCs5cbA-1781551850.6489294-1.0.1.1-X2JbvCs.kMXrd5f_x7qemXbKv6X0Z0qVq9GY84UicHRMzbcY63CMybNg9aeDkP9qL.1dnqsXv458Yr_zIx0qEg30pUtZxSBD55LaT.4woMC0VC2hIns4r0WmOvkgLVb.; + - __cf_bm=wMU9nwsmDhGo3OPjOCfmRUlWn4Z5wzPC6.8VtDj4oMA-1782743358.3305473-1.0.1.1-ipW4mxRwYEBcZ1aSVqv.YwkyI1UwN0zEabAmC6Ufk.Qn8qhmJk863gouw4Ao1tb1rMuPuoEge1T1dgPpPFv_qt993OAPmAr_Ru7..LON6fryMblVya28HMXdLsLVGHz2; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:51 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:19 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -101,13 +120,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999995' + - '149999722' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_73dd9daf70354c44bdfd17a380fc555f + - 83468415-8b4b-475e-92d6-54a2707fdcf5 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_binary_content.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_binary_content.yaml index 636c23ca..af2b4000 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_binary_content.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_binary_content.yaml @@ -1,114 +1,125 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":[{"image_url":{"url":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACklEQVR4nGMAAQAABQABDQottAAAAABJRU5ErkJggg=="},"type":"image_url"},{"text":"What - color is this image?","type":"text"}]}],"model":"gpt-4o-mini","max_completion_tokens":50,"stream":false}' + body: '{"input":[{"role":"user","content":[{"image_url":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAACklEQVR4nGMAAQAABQABDQottAAAAABJRU5ErkJggg==","type":"input_image","detail":"auto"},{"text":"What + color is this image?","type":"input_text"}]}],"max_output_tokens":50,"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '315' - Content-Type: + content-length: + - '324' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JQH7CybyR03kp6iqNIVclq2vqO\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551864,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"The image appears to be black.\",\n - \ \"refusal\": null,\n \"annotations\": []\n },\n \"logprobs\": - null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": - 8513,\n \"completion_tokens\": 7,\n \"total_tokens\": 8520,\n \"prompt_tokens_details\": - {\n \"cached_tokens\": 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_eee5e0b136\"\n}\n" + string: "{\n \"id\": \"resp_040d1fdf8198e6ac006a4281536b88819fa2eb3a8539ee6271\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743379,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743380,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 50,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_040d1fdf8198e6ac006a4281545afc819f97ad19e8638c8f59\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"This image is completely + black.\"\n }\n ],\n \"role\": \"assistant\"\n }\n ],\n + \ \"parallel_tool_calls\": true,\n \"presence_penalty\": 0.0,\n \"previous_response_id\": + null,\n \"prompt_cache_key\": null,\n \"prompt_cache_retention\": \"in_memory\",\n + \ \"reasoning\": {\n \"context\": null,\n \"effort\": null,\n \"summary\": + null\n },\n \"safety_identifier\": null,\n \"service_tier\": \"default\",\n + \ \"store\": true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": + {\n \"type\": \"text\"\n },\n \"verbosity\": \"medium\"\n },\n + \ \"tool_choice\": \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n + \ \"input_tokens\": 0,\n \"input_tokens_details\": {\n \"image_tokens\": + 0,\n \"text_tokens\": 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 8513,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 7,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 8520\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe2afa71c8b1-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:04 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359fe90af9ebb6-YYZ + connection: + - keep-alive content-length: - - '840' + - '1971' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:40 GMT openai-organization: - braintrust-data openai-processing-ms: - - '1079' + - '1179' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=tT9wWTz1UXnNPaVcUky0egd2AtZYtQZvMThleBc4qMw-1781551863.5165741-1.0.1.1-Jep_lj2fs2qnF1_5QbHxZv5P08BsMSYBxMPyqlxMOM7S1LXQXpnDFOt1.ygkx2W7bmyyNknZ8qqJGXq1nCY7rpWlSuZLU7.CSoIyrb8NxNZegOk.xa3O7c73IdLaKatd; + - __cf_bm=AfdKXBFkS9jrQEUgwS8pUIU2m4zOuJcnTXooAWG4rmw-1782743379.3692822-1.0.1.1-K_A.YE50I0gjLNpLpG5GEgF1moRUDzd3R7ARqUYzML9NpOfvbYL6lzizw2rhoEwY.mN78.39y5adEeR2k_xTY_FdKl9XT8.yYrz99jT26vB9hIXvHmlm6VGZFfmGhPlH; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:04 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-input-images: - - '50000' + 29 Jun 2026 14:59:40 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: - '150000000' - x-ratelimit-remaining-input-images: - - '49999' x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999227' - x-ratelimit-reset-input-images: - - 1ms + - '149999235' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_ebae2ef2aa51489393708e1c984222eb + - 074c20cc-dcfd-489c-8137-67babe289cdd status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_custom_settings.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_custom_settings.yaml index f16347ed..d1245c76 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_custom_settings.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_custom_settings.yaml @@ -1,93 +1,110 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Say hello"}],"model":"gpt-4o-mini","max_completion_tokens":20,"stream":false,"temperature":0.5,"top_p":0.9}' + body: '{"input":[{"role":"user","content":"Say hello"}],"max_output_tokens":20,"model":"gpt-4o-mini","stream":false,"temperature":0.5,"top_p":0.9}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '146' - Content-Type: + content-length: + - '139' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JKOCEGNQEPIiNEbgmPYD72Abnp\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551858,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"Hello! How can I assist you today?\",\n - \ \"refusal\": null,\n \"annotations\": []\n },\n \"logprobs\": - null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": - 9,\n \"completion_tokens\": 9,\n \"total_tokens\": 18,\n \"prompt_tokens_details\": - {\n \"cached_tokens\": 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_dca9632699\"\n}\n" + string: "{\n \"id\": \"resp_044e5b0fdaf0653e006a42814a2c6c8191977ee4f7ed9500dc\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743370,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743371,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 20,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_044e5b0fdaf0653e006a42814aba088191aa959b30b21cae22\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"Hello! How can I assist + you today?\"\n }\n ],\n \"role\": \"assistant\"\n }\n + \ ],\n \"parallel_tool_calls\": true,\n \"presence_penalty\": 0.0,\n \"previous_response_id\": + null,\n \"prompt_cache_key\": null,\n \"prompt_cache_retention\": \"in_memory\",\n + \ \"reasoning\": {\n \"context\": null,\n \"effort\": null,\n \"summary\": + null\n },\n \"safety_identifier\": null,\n \"service_tier\": \"default\",\n + \ \"store\": true,\n \"temperature\": 0.5,\n \"text\": {\n \"format\": + {\n \"type\": \"text\"\n },\n \"verbosity\": \"medium\"\n },\n + \ \"tool_choice\": \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n + \ \"input_tokens\": 0,\n \"input_tokens_details\": {\n \"image_tokens\": + 0,\n \"text_tokens\": 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 0.9,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 9,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 10,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 19\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe0a8d5d813d-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:58 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359faf4f09f8ac-YYZ + connection: + - keep-alive content-length: - - '839' + - '1970' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:31 GMT openai-organization: - braintrust-data openai-processing-ms: - - '344' + - '1006' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=K9.Kma4q5QKteSZfSyD5Q7JZ20QXPf7Ypfbdgko7ENE-1781551858.3315687-1.0.1.1-tfKBuRKosQ9mtxTLe5CTW7GjkTOFLbXs.R3ihBUsAkKeYt5Yc61FePe2IU._MievHHdq7oZhkc12s2CX26rZko_jd.fu2E2I.J.SdKUNdhd.vUhvh0mcafxh_mdo2jHg; + - __cf_bm=JcympoY3jvXxZWhRwerD.3Y73VfIJq2nRsetXfioitU-1782743370.130778-1.0.1.1-6cKDGsCgSrlQJfKkM5awGvwCtij40p0zCjHoTOP7on_CiW2aaP4GUwsHMJ6LtGxWdFNil1wXDweEksHQdy7Ifj9_fuD.Y3dQgXN06OTft2Ykqfef3gPu3CChqKZnIvkB; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:58 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:31 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -95,13 +112,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999997' + - '149999972' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_30b7e6969a254232ada5e7dd37425a9b + - d3771f0b-ba76-4e4a-bbe8-9ec8259632be status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_document_input.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_document_input.yaml index 26cb2feb..8db25ea3 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_document_input.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_document_input.yaml @@ -1,97 +1,113 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":[{"file":{"file_data":"data:application/pdf;base64,JVBERi0xLjQKMSAwIG9iajw8L1R5cGUvQ2F0YWxvZy9QYWdlcyAyIDAgUj4+ZW5kb2JqIDIgMCBvYmo8PC9UeXBlL1BhZ2VzL0tpZHNbMyAwIFJdL0NvdW50IDE+PmVuZG9iaiAzIDAgb2JqPDwvVHlwZS9QYWdlL1BhcmVudCAyIDAgUi9NZWRpYUJveFswIDAgNjEyIDc5Ml0vQ29udGVudHMgNCAwIFI+PmVuZG9iaiA0IDAgb2JqPDwvTGVuZ3RoIDQ0Pj5zdHJlYW0KQlQgL0YxIDEyIFRmIDEwMCA3MDAgVGQgKFRlc3QgRG9jdW1lbnQpIFRqIEVUCmVuZHN0cmVhbQplbmRvYmoKeHJlZgowIDUKMDAwMDAwMDAwMCA2NTUzNSBmCjAwMDAwMDAwMDkgMDAwMDAgbgowMDAwMDAwMDU4IDAwMDAwIG4KMDAwMDAwMDExNSAwMDAwMCBuCjAwMDAwMDAyMTQgMDAwMDAgbgp0cmFpbGVyPDwvU2l6ZSA1L1Jvb3QgMSAwIFI+PgpzdGFydHhyZWYKMzA3CiUlRU9G","filename":"filename.pdf"},"type":"file"},{"text":"What - is in this document?","type":"text"}]}],"model":"gpt-4o-mini","max_completion_tokens":150,"stream":false}' + body: '{"input":[{"role":"user","content":[{"type":"input_file","file_data":"data:application/pdf;base64,JVBERi0xLjQKMSAwIG9iajw8L1R5cGUvQ2F0YWxvZy9QYWdlcyAyIDAgUj4+ZW5kb2JqIDIgMCBvYmo8PC9UeXBlL1BhZ2VzL0tpZHNbMyAwIFJdL0NvdW50IDE+PmVuZG9iaiAzIDAgb2JqPDwvVHlwZS9QYWdlL1BhcmVudCAyIDAgUi9NZWRpYUJveFswIDAgNjEyIDc5Ml0vQ29udGVudHMgNCAwIFI+PmVuZG9iaiA0IDAgb2JqPDwvTGVuZ3RoIDQ0Pj5zdHJlYW0KQlQgL0YxIDEyIFRmIDEwMCA3MDAgVGQgKFRlc3QgRG9jdW1lbnQpIFRqIEVUCmVuZHN0cmVhbQplbmRvYmoKeHJlZgowIDUKMDAwMDAwMDAwMCA2NTUzNSBmCjAwMDAwMDAwMDkgMDAwMDAgbgowMDAwMDAwMDU4IDAwMDAwIG4KMDAwMDAwMDExNSAwMDAwMCBuCjAwMDAwMDAyMTQgMDAwMDAgbgp0cmFpbGVyPDwvU2l6ZSA1L1Jvb3QgMSAwIFI+PgpzdGFydHhyZWYKMzA3CiUlRU9G","filename":"filename.pdf"},{"text":"What + is in this document?","type":"input_text"}]}],"max_output_tokens":150,"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '816' - Content-Type: + content-length: + - '812' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JRBQqBIZvvti4MOSTgGWz5rBQ4\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551865,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"The document appears to contain a single - page with the title \\\"Test Document.\\\" However, without further details - or specific content provided, I can\u2019t summarize more about it. If you - need information on a particular aspect or section, please let me know!\",\n - \ \"refusal\": null,\n \"annotations\": []\n },\n \"logprobs\": - null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": - 231,\n \"completion_tokens\": 49,\n \"total_tokens\": 280,\n \"prompt_tokens_details\": - {\n \"cached_tokens\": 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_eee5e0b136\"\n}\n" + string: "{\n \"id\": \"resp_070048abad26aae8006a428154c318819c929bcfd8aa33dd97\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743382,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743383,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 150,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_070048abad26aae8006a428156e2d4819ca83ea5f52179cb25\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"The document appears + to be a simple test document, likely containing no specific content other + than its title. If there are particular sections or details you need assistance + with, please let me know!\"\n }\n ],\n \"role\": \"assistant\"\n + \ }\n ],\n \"parallel_tool_calls\": true,\n \"presence_penalty\": 0.0,\n + \ \"previous_response_id\": null,\n \"prompt_cache_key\": null,\n \"prompt_cache_retention\": + \"in_memory\",\n \"reasoning\": {\n \"context\": null,\n \"effort\": + null,\n \"summary\": null\n },\n \"safety_identifier\": null,\n \"service_tier\": + \"default\",\n \"store\": true,\n \"temperature\": 1.0,\n \"text\": {\n + \ \"format\": {\n \"type\": \"text\"\n },\n \"verbosity\": \"medium\"\n + \ },\n \"tool_choice\": \"auto\",\n \"tool_usage\": {\n \"image_gen\": + {\n \"input_tokens\": 0,\n \"input_tokens_details\": {\n \"image_tokens\": + 0,\n \"text_tokens\": 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 32,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 38,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 70\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe331b376e57-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:05 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359ff17b30c48a-YYZ + connection: + - keep-alive content-length: - - '1065' + - '2138' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:43 GMT openai-organization: - braintrust-data openai-processing-ms: - - '993' + - '2607' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=9f0V0qV3KbXcgRBZosg2TMPis5ye1g_YT8Ihq62dahg-1781551864.8156068-1.0.1.1-KIQRArUbqwwPCE7a5gPbCjOZyKDQRtIRYVTu8FZi1tLvXsAd7381BeoFzinwe0rQwrVRZ_EP2Ps.Q6XCOmMrleHxer7PIcDLs8f0WXeEfW2MtBeJGqckifpvH1a6.zoO; + - __cf_bm=rggM51m0mFn5uovRueu443YJaLCRLn2h4nJrJ8Qv1P0-1782743380.7149756-1.0.1.1-OBWP5UFYI.txjGQLyqVWaEZR3pbNyc_vpqORBc6ybdFq.E6f9ws8z_MN0e9DiSEk7p3DnvvyPQGtEjGCyb9svw1H9AQLEgMpoo.N3xmFeCRyrqBK8km5eZ6bCHQlakLZ; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:05 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:43 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -99,13 +115,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999225' + - '149999947' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_4fe6830bc0ec42949533f40531a5784c + - 16c9984d-24e8-4018-897b-6136796ffdb3 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_error_handling.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_error_handling.yaml index 4ada6a74..555ef9b5 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_error_handling.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_error_handling.yaml @@ -1,108 +1,88 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":[{"image_url":{"url":"data:image/png;base64,SU5WQUxJRF9QTkdfREFUQV9OT1RfQV9SRUFMX0lNQUdF"},"type":"image_url"},{"text":"What''s - in this image?","type":"text"}]}],"model":"gpt-4o-mini","max_completion_tokens":100,"stream":false}' + body: '{"input":[{"role":"user","content":[{"image_url":"data:image/png;base64,SU5WQUxJRF9QTkdfREFUQV9OT1RfQV9SRUFMX0lNQUdF","type":"input_image","detail":"auto"},{"text":"What''s + in this image?","type":"input_text"}]}],"max_output_tokens":100,"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '264' - Content-Type: + content-length: + - '273' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"error\": {\n \"message\": \"You uploaded an unsupported image. - Please make sure your image has of one the following formats: ['png', 'jpeg', - 'gif', 'webp'].\",\n \"type\": \"invalid_request_error\",\n \"param\": - null,\n \"code\": \"invalid_image_format\"\n }\n}" + string: "{\n \"error\": {\n \"message\": \"The image data you provided does + not represent a valid image. Please check your input and try again with one + of the supported image formats: ['image/jpeg', 'image/png', 'image/gif', 'image/webp'].\",\n + \ \"type\": \"invalid_request_error\",\n \"param\": \"input\",\n \"code\": + \"invalid_value\"\n }\n}" headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3feb36e54a3f1-YYZ - Connection: - - keep-alive - Content-Length: - - '258' - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:25 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a0a89e670c69-YYZ + connection: + - keep-alive + content-length: + - '322' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:30:10 GMT openai-organization: - braintrust-data openai-processing-ms: - - '23' + - '73' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=T4_TqjT_L6EaurQiOX1gfgMGEWBrp5En_qmRkcAo6QI-1781551885.348701-1.0.1.1-ISD.gsdHQfEne10v98ksTz1XUMYt901raLbMQzP9bbdI5iXA5h.p..KtGGl.AGButd2GwpyqbNcm0QyW0kMEqDZbaBAZzF62Q9bW6loRVbxBMeJ05ykt8mOo816DwcU0; + - __cf_bm=RC2JiW4mjBI26f_9B4RJK_4kWKjWO1Qs_rjAH66nQSs-1782743410.0156922-1.0.1.1-r1llO92R3BcpfDNJZTsehVDpbCEdp0lfyNz7HplIRKMIMgTs4nBaUIe1hQZONq6hMwiNuXcc2qoSWvqq1OpYqVgkt1MQDMgX8Yn.SqOhMVPYI5zazfx.6Lqrt.cmfKDU; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:25 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-input-images: - - '50000' - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-input-images: - - '49999' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999225' - x-ratelimit-reset-input-images: - - 1ms - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 15:00:10 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + x-content-type-options: + - nosniff x-request-id: - - req_99febf19ad3a49d594fc9cd7649a2abd + - 58d3200e-77e6-4089-a9df-95c4ac9abe2e status: code: 400 message: Bad Request diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_long_context.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_long_context.yaml index 01b4896d..2f24307f 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_long_context.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_long_context.yaml @@ -1,106 +1,122 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Here is a long text:\n\nThe quick - brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog. - The quick brown fox jumps over the lazy dog. The quick brown fox jumps over - the lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox - jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick - brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog. - The quick brown fox jumps over the lazy dog. The quick brown fox jumps over - the lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox - jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The quick - brown fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog. - The quick brown fox jumps over the lazy dog. The quick brown fox jumps over - the lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox - jumps over the lazy dog. \n\nHow many times does the word ''fox'' appear?"}],"model":"gpt-4o-mini","max_completion_tokens":100,"stream":false}' + body: '{"input":[{"role":"user","content":"Here is a long text:\n\nThe quick brown + fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The + quick brown fox jumps over the lazy dog. The quick brown fox jumps over the + lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox jumps + over the lazy dog. The quick brown fox jumps over the lazy dog. The quick brown + fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The + quick brown fox jumps over the lazy dog. The quick brown fox jumps over the + lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox jumps + over the lazy dog. The quick brown fox jumps over the lazy dog. The quick brown + fox jumps over the lazy dog. The quick brown fox jumps over the lazy dog. The + quick brown fox jumps over the lazy dog. The quick brown fox jumps over the + lazy dog. The quick brown fox jumps over the lazy dog. The quick brown fox jumps + over the lazy dog. \n\nHow many times does the word ''fox'' appear?"}],"max_output_tokens":100,"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '1078' - Content-Type: + content-length: + - '1071' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JkIYDRFzgc02PKIpNTR5aEVPlt\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551884,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"The word 'fox' appears 20 times in - the text.\",\n \"refusal\": null,\n \"annotations\": []\n },\n - \ \"logprobs\": null,\n \"finish_reason\": \"stop\"\n }\n ],\n - \ \"usage\": {\n \"prompt_tokens\": 225,\n \"completion_tokens\": 13,\n - \ \"total_tokens\": 238,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_6ba3ec5f0d\"\n}\n" + string: "{\n \"id\": \"resp_059c86665ba9ce95006a4281710f2481928d3d4584302114cc\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743409,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743409,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 100,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_059c86665ba9ce95006a42817183c48192a07d37490db9df02\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"The word \\\"fox\\\" + appears 20 times in the text.\"\n }\n ],\n \"role\": \"assistant\"\n + \ }\n ],\n \"parallel_tool_calls\": true,\n \"presence_penalty\": 0.0,\n + \ \"previous_response_id\": null,\n \"prompt_cache_key\": null,\n \"prompt_cache_retention\": + \"in_memory\",\n \"reasoning\": {\n \"context\": null,\n \"effort\": + null,\n \"summary\": null\n },\n \"safety_identifier\": null,\n \"service_tier\": + \"default\",\n \"store\": true,\n \"temperature\": 1.0,\n \"text\": {\n + \ \"format\": {\n \"type\": \"text\"\n },\n \"verbosity\": \"medium\"\n + \ },\n \"tool_choice\": \"auto\",\n \"tool_usage\": {\n \"image_gen\": + {\n \"input_tokens\": 0,\n \"input_tokens_details\": {\n \"image_tokens\": + 0,\n \"text_tokens\": 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 225,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 14,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 239\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3feafcaa2cceb-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:25 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a0a23edea3f1-YYZ + connection: + - keep-alive content-length: - - '853' + - '1986' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:30:09 GMT openai-organization: - braintrust-data openai-processing-ms: - - '386' + - '805' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=f2EKkPk20N0M8wOfpmuwz8p3CQbhM4oCvH_0ZGpCcDg-1781551884.7708645-1.0.1.1-r0byqK.FKgnSU5SIxsWodKsFPPMm0V.Z26dCH3zne5dA7luxh0FowOSQnqxZT2rJHcdD5JdNSTl3grgaxE06KyahxpAlQkc9d.qlLsysdVpkfWAjWP2X0KJRpaX4bXv9; + - __cf_bm=XLjVvZb4iDq2r2v8PLjUoW0J0Gi5UiFrcoWkvy1GGV4-1782743408.9932451-1.0.1.1-DDhY6y8aQpiWzFco_0Pv9crRo9E33QsyXA4alzeBakDB5QxKXXlxhQ.XY8zvJExxgwZjy.gmAhcfrVprSkVPWDkhcGUTvRYLFBCj0YwDm3yLeYB6gNZrRY.m4qVc9Gl1; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:25 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 15:00:09 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -108,13 +124,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999755' + - '149999757' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_c046685575a84eedbef30288222b08dd + - bad8418a-5fe2-4780-b25e-bb194afbac97 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_message_history.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_message_history.yaml index e35ed1f2..8d6be3a5 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_message_history.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_message_history.yaml @@ -1,94 +1,110 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"My name is Alice"}],"model":"gpt-4o-mini","max_completion_tokens":100,"stream":false}' + body: '{"input":[{"role":"user","content":"My name is Alice"}],"max_output_tokens":100,"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '124' - Content-Type: + content-length: + - '117' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JJSlBKTm6fGP48jmqmPG3nahX6\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551857,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"Nice to meet you, Alice! How can I - assist you today?\",\n \"refusal\": null,\n \"annotations\": - []\n },\n \"logprobs\": null,\n \"finish_reason\": \"stop\"\n - \ }\n ],\n \"usage\": {\n \"prompt_tokens\": 11,\n \"completion_tokens\": - 14,\n \"total_tokens\": 25,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_f4c4edc0d3\"\n}\n" + string: "{\n \"id\": \"resp_0bda71d675091532006a428145468c819dafb06b1659febf8d\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743365,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743368,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 100,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_0bda71d675091532006a428148ddec819d8012b04311c48db6\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"Nice to meet you, + Alice! How can I assist you today?\"\n }\n ],\n \"role\": + \"assistant\"\n }\n ],\n \"parallel_tool_calls\": true,\n \"presence_penalty\": + 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": null,\n \"prompt_cache_retention\": + \"in_memory\",\n \"reasoning\": {\n \"context\": null,\n \"effort\": + null,\n \"summary\": null\n },\n \"safety_identifier\": null,\n \"service_tier\": + \"default\",\n \"store\": true,\n \"temperature\": 1.0,\n \"text\": {\n + \ \"format\": {\n \"type\": \"text\"\n },\n \"verbosity\": \"medium\"\n + \ },\n \"tool_choice\": \"auto\",\n \"tool_usage\": {\n \"image_gen\": + {\n \"input_tokens\": 0,\n \"input_tokens_details\": {\n \"image_tokens\": + 0,\n \"text_tokens\": 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 11,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 15,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 26\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe01e9804cc4-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:57 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f909edf9dab-YYZ + connection: + - keep-alive content-length: - - '859' + - '1990' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:29 GMT openai-organization: - braintrust-data openai-processing-ms: - - '430' + - '3834' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=jOn2c2iyrpQadW3dHxiVePxqIuYn78QHSS.dOCfXQ.I-1781551856.9425716-1.0.1.1-XCDHp9oFR3r9WWxMPOzjgvh50CMh2qcXxRbR8VTvGG79TXkDaV0ZXRH_U0mXt_fFTBfqp413P0ZB4sjjrgIqFWOdFPqBK.UhIb8IZD4y65yTEFZNfd6DFSfV2QD7L7UM; + - __cf_bm=QVZqC03aWPNBhZzJ3mxvuLV1.BY.bxEkQx3fqMqUgs0-1782743365.2209451-1.0.1.1-sU.4s_jlOB2b_wTsCIZQIGzUGWA8RbVsDBBZ1r2XLa5ZItraexnlS3ZXfb1_eTI5eEJlarcfwxsOGT6eNrWojDHboGgQ930doLuFTZLRaZsSJEeOGFAWqIvfTWnLcBIa; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:57 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:29 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -96,105 +112,122 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999995' + - '149999970' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_42dd9ecc17884edeae3a55160bd564d0 + - 66ece227-886c-4e49-8282-f3a624674bb4 status: code: 200 message: OK - request: - body: '{"messages":[{"role":"user","content":"My name is Alice"},{"role":"assistant","content":"Nice + body: '{"input":[{"role":"user","content":"My name is Alice"},{"role":"assistant","content":"Nice to meet you, Alice! How can I assist you today?"},{"role":"user","content":"What - is my name?"}],"model":"gpt-4o-mini","max_completion_tokens":100,"stream":false}' + is my name?"}],"max_output_tokens":100,"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '255' - Content-Type: + content-length: + - '248' + content-type: - application/json - Cookie: - - __cf_bm=jOn2c2iyrpQadW3dHxiVePxqIuYn78QHSS.dOCfXQ.I-1781551856.9425716-1.0.1.1-XCDHp9oFR3r9WWxMPOzjgvh50CMh2qcXxRbR8VTvGG79TXkDaV0ZXRH_U0mXt_fFTBfqp413P0ZB4sjjrgIqFWOdFPqBK.UhIb8IZD4y65yTEFZNfd6DFSfV2QD7L7UM - Host: + cookie: + - __cf_bm=QVZqC03aWPNBhZzJ3mxvuLV1.BY.bxEkQx3fqMqUgs0-1782743365.2209451-1.0.1.1-sU.4s_jlOB2b_wTsCIZQIGzUGWA8RbVsDBBZ1r2XLa5ZItraexnlS3ZXfb1_eTI5eEJlarcfwxsOGT6eNrWojDHboGgQ930doLuFTZLRaZsSJEeOGFAWqIvfTWnLcBIa + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JJ1ZX3rGkE0476yuZGMHXjKwU1\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551857,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"Your name is Alice.\",\n \"refusal\": - null,\n \"annotations\": []\n },\n \"logprobs\": null,\n - \ \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": - 38,\n \"completion_tokens\": 5,\n \"total_tokens\": 43,\n \"prompt_tokens_details\": - {\n \"cached_tokens\": 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_203cacd279\"\n}\n" + string: "{\n \"id\": \"resp_0736b06cb69cd61e006a428149347081a2a41c09b4a25e1034\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743369,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743369,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 100,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_0736b06cb69cd61e006a428149b10481a2b5138ee46fecec27\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"Your name is Alice! + How can I help you today?\"\n }\n ],\n \"role\": \"assistant\"\n + \ }\n ],\n \"parallel_tool_calls\": true,\n \"presence_penalty\": 0.0,\n + \ \"previous_response_id\": null,\n \"prompt_cache_key\": null,\n \"prompt_cache_retention\": + \"in_memory\",\n \"reasoning\": {\n \"context\": null,\n \"effort\": + null,\n \"summary\": null\n },\n \"safety_identifier\": null,\n \"service_tier\": + \"default\",\n \"store\": true,\n \"temperature\": 1.0,\n \"text\": {\n + \ \"format\": {\n \"type\": \"text\"\n },\n \"verbosity\": \"medium\"\n + \ },\n \"tool_choice\": \"auto\",\n \"tool_usage\": {\n \"image_gen\": + {\n \"input_tokens\": 0,\n \"input_tokens_details\": {\n \"image_tokens\": + 0,\n \"text_tokens\": 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 38,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 13,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 51\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe058afdac99-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:58 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359fa928339dab-YYZ + connection: + - keep-alive content-length: - - '825' + - '1983' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:29 GMT openai-organization: - braintrust-data openai-processing-ms: - - '629' + - '765' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' - x-openai-proxy-wasm: - - v0.1 + server: + - cloudflare + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -202,13 +235,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999975' + - '149999942' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_05d0c41e53314eaa86a0d89ee83d6972 + - ad368c18-8a31-407e-a14a-9beed4243a45 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_model_settings_in_metadata.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_model_settings_in_metadata.yaml index 50b75d8b..ff3c9112 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_model_settings_in_metadata.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_model_settings_in_metadata.yaml @@ -1,93 +1,110 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Say hello"}],"model":"gpt-4o-mini","max_completion_tokens":100,"stream":false,"temperature":0.5}' + body: '{"input":[{"role":"user","content":"Say hello"}],"max_output_tokens":100,"model":"gpt-4o-mini","stream":false,"temperature":0.5}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '135' - Content-Type: + content-length: + - '128' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JDrYYIX1znlxDWF0xaVZCftuvm\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551851,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"Hello! How can I assist you today?\",\n - \ \"refusal\": null,\n \"annotations\": []\n },\n \"logprobs\": - null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": - 9,\n \"completion_tokens\": 9,\n \"total_tokens\": 18,\n \"prompt_tokens_details\": - {\n \"cached_tokens\": 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_dca9632699\"\n}\n" + string: "{\n \"id\": \"resp_060bd569da139b83006a428140116881929112ba91c282867f\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743360,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743360,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 100,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_060bd569da139b83006a428140ab0c8192922bb17765b3ea3c\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"Hello! How can I assist + you today?\"\n }\n ],\n \"role\": \"assistant\"\n }\n + \ ],\n \"parallel_tool_calls\": true,\n \"presence_penalty\": 0.0,\n \"previous_response_id\": + null,\n \"prompt_cache_key\": null,\n \"prompt_cache_retention\": \"in_memory\",\n + \ \"reasoning\": {\n \"context\": null,\n \"effort\": null,\n \"summary\": + null\n },\n \"safety_identifier\": null,\n \"service_tier\": \"default\",\n + \ \"store\": true,\n \"temperature\": 0.5,\n \"text\": {\n \"format\": + {\n \"type\": \"text\"\n },\n \"verbosity\": \"medium\"\n },\n + \ \"tool_choice\": \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n + \ \"input_tokens\": 0,\n \"input_tokens_details\": {\n \"image_tokens\": + 0,\n \"text_tokens\": 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 9,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 10,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 19\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fde0f92d34dc-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:52 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f701af2fc7d-YYZ + connection: + - keep-alive content-length: - - '839' + - '1971' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:20 GMT openai-organization: - braintrust-data openai-processing-ms: - - '462' + - '917' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=wNSAG0SeXDZ2aIooqsv4ZfthwnbQcdc.Ryj8qNHfJrM-1781551851.6796684-1.0.1.1-jAVrNL0u2CTewD_sx6fV8IT6tOnUHzmKtA7Oo_HQhX9LIuksoGIfRfmvp0bn98wWlapiYD9nJGRWDG_okKdnQ4N0MB2lg1Ji0SEkRJAPUjcvMLPL32sPyqs57aLfHnT8; + - __cf_bm=uoFMeNNVrilIEJyJ.jO.OR69SFp3waS0e6v5sk7UuAM-1782743360.0140836-1.0.1.1-z_.lVYhxBG62CJPIPcwJ4GeWwh25q.tc0vAVukIeGrW0KVT5jm4Sv8zjNJjT5P.znL.Wk2b4NuqO6YQKjTJwiGO5ePhapOL4IA1F3IDCOGepMAe_0ycl0sNipBCgJV1_; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:52 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:20 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -95,13 +112,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999995' + - '149999972' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_1da9f211f675494983e4a02769bfe0dd + - c34616ec-6a78-4e40-8ec8-ca8a08e10c93 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_model_settings_override_in_input.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_model_settings_override_in_input.yaml index 8975abd6..a9287af5 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_model_settings_override_in_input.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_model_settings_override_in_input.yaml @@ -1,106 +1,122 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Tell me a story"}],"model":"gpt-4o-mini","max_completion_tokens":200,"stream":false,"temperature":0.9}' + body: '{"input":[{"role":"user","content":"Tell me a story"}],"max_output_tokens":200,"model":"gpt-4o-mini","stream":false,"temperature":0.9}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '141' - Content-Type: + content-length: + - '134' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JEj7F4B4TgkRWIwCQIjIev0bub\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551852,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"Once upon a time, in a quaint little - village nestled between rolling hills and a sparkling river, there lived a - young girl named Elara. She had a heart full of dreams and a spirit as vibrant - as the wildflowers that bloomed in the meadow nearby. Elara loved exploring - the forests and fields, always searching for adventure and stories to tell.\\n\\nOne - sunny afternoon, while wandering deeper into the woods than she ever had before, - Elara stumbled upon an ancient oak tree. Its gnarled roots twisted above ground, - and its branches stretched high, covered in emerald leaves. But what caught - her eye was a small, shimmering door at the base of the tree, adorned with - intricate carvings of stars and moons.\\n\\nCuriosity bubbled within her, - and without a second thought, Elara knelt down and gently pushed the door - open. To her amazement, the moment she stepped through, she found herself - in a breathtaking realm\u2014the Land of Whimsy, where colors danced and laughter - flowed like\",\n \"refusal\": null,\n \"annotations\": []\n - \ },\n \"logprobs\": null,\n \"finish_reason\": \"length\"\n - \ }\n ],\n \"usage\": {\n \"prompt_tokens\": 11,\n \"completion_tokens\": - 200,\n \"total_tokens\": 211,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_997b5b4ee9\"\n}\n" + string: "{\n \"id\": \"resp_01a754b20981a62f006a4281412848819caad18fcd5d2bb23e\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743361,\n \"status\": + \"incomplete\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": null,\n \"error\": null,\n \"frequency_penalty\": + 0.0,\n \"incomplete_details\": {\n \"reason\": \"max_output_tokens\"\n + \ },\n \"instructions\": null,\n \"max_output_tokens\": 200,\n \"max_tool_calls\": + null,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n + \ \"output\": [\n {\n \"id\": \"msg_01a754b20981a62f006a428141ad08819cb0f30564cbfcd855\",\n + \ \"type\": \"message\",\n \"status\": \"incomplete\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"Once upon a time in + a quaint little village nestled between rolling hills, there lived a young + girl named Elara. She had a wild imagination and a heart full of dreams. Elara + spent her days exploring the lush forests that surrounded her home, often + inventing tales of magical creatures and hidden treasures.\\n\\nOne sunny + afternoon, while wandering deeper into the woods than she ever had before, + Elara stumbled upon a shimmering pond. Its water sparkled like diamonds, and + at the edge, she noticed a tiny, golden fish staring at her with curious eyes. + To her surprise, the fish spoke.\\n\\n\\\"Hello, young dreamer. I am Ori, + the guardian of this pond. I can grant you one wish, but you must promise + to use it wisely.\\\"\\n\\nElara's eyes widened with excitement. She thought + about all the things she could wish for\\u2014endless toys, a grand castle, + or even the ability to fly. But deep down, she realized what she truly desired: + the ability to bring\"\n }\n ],\n \"role\": \"assistant\"\n + \ }\n ],\n \"parallel_tool_calls\": true,\n \"presence_penalty\": 0.0,\n + \ \"previous_response_id\": null,\n \"prompt_cache_key\": null,\n \"prompt_cache_retention\": + \"in_memory\",\n \"reasoning\": {\n \"context\": null,\n \"effort\": + null,\n \"summary\": null\n },\n \"safety_identifier\": null,\n \"service_tier\": + \"default\",\n \"store\": true,\n \"temperature\": 0.9,\n \"text\": {\n + \ \"format\": {\n \"type\": \"text\"\n },\n \"verbosity\": \"medium\"\n + \ },\n \"tool_choice\": \"auto\",\n \"tool_usage\": {\n \"image_gen\": + {\n \"input_tokens\": 0,\n \"input_tokens_details\": {\n \"image_tokens\": + 0,\n \"text_tokens\": 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 11,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 200,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 211\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fde51f911117-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:55 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f76ba27ac5d-YYZ + connection: + - keep-alive content-length: - - '1784' + - '2914' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:23 GMT openai-organization: - braintrust-data openai-processing-ms: - - '2551' + - '2652' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=bGMZMFRfZtfiQQ53kPFnQ2i9Osis20dt1LHABgWBHpQ-1781551852.3332703-1.0.1.1-RZor.jsnEQhBn_jzO96sBzfZ85ASUG.ZgOeiHnbpNuKLEFxU4RMWciv3bOIzQdfhj4PE19._jbT29DOkvdZuYdsLfiO4hWKiF8ePFOUtSCQ5UFPF8iJ9H_4Z_QOVDvov; + - __cf_bm=WZ53acXZ0jpElYLTMKTI44kmvhc8wmv_b0d.o8Vx0fk-1782743361.0727468-1.0.1.1-.07N5j_iAwi4dhAqmujsY0my.6epSaLRuOBZDkb0GJ62ugFQrF0ikIs6_.2HC26_yxvn.fGhC9XJQjdnZY68HvkCsBn_t.zJADGWKSjMSP26TA9d2GpgBesUT4fxS97p; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:55 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:23 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -108,13 +124,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999992' + - '149999970' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_c73162579a2841e29b318ca314ab3a87 + - 54cbd19d-59ef-4624-a11d-8cc763957966 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_prefill.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_prefill.yaml index 39a61088..4c7703ee 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_prefill.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_prefill.yaml @@ -1,95 +1,112 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Write a haiku about coding."},{"role":"assistant","content":"Here - is a haiku:"},{"role":"user","content":"Write a haiku about coding."}],"model":"gpt-4o-mini","max_completion_tokens":200,"stream":false}' + body: '{"input":[{"role":"user","content":"Write a haiku about coding."},{"role":"assistant","content":"Here + is a haiku:"},{"role":"user","content":"Write a haiku about coding."}],"max_output_tokens":200,"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '241' - Content-Type: + content-length: + - '234' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JjlrC69OwqzNl3K4t8bYvIueO5\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551883,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"Lines of code take flight, \\nLogic - dances in the night, \\nDreams in algorithms. \",\n \"refusal\": - null,\n \"annotations\": []\n },\n \"logprobs\": null,\n - \ \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": - 35,\n \"completion_tokens\": 20,\n \"total_tokens\": 55,\n \"prompt_tokens_details\": - {\n \"cached_tokens\": 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_1c420c5839\"\n}\n" + string: "{\n \"id\": \"resp_0351b14b17fb6785006a42816f140c819fb56b6618e0f86d38\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743407,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743407,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 200,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_0351b14b17fb6785006a42816f6a54819f8b4313abd8cfa00c\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"Lines of logic flow, + \ \\nFingers dance on keys like rain, \\nIdeas take flight. \"\n }\n + \ ],\n \"role\": \"assistant\"\n }\n ],\n \"parallel_tool_calls\": + true,\n \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 35,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 21,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 56\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fea65c4a24ee-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:24 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a095dd1774a7-YYZ + connection: + - keep-alive content-length: - - '890' + - '2018' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:30:07 GMT openai-organization: - braintrust-data openai-processing-ms: - - '768' + - '803' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=s0YsqjamS07.l256wZg67U9LZurWDl4KLrJCiQz6q0o-1781551883.252092-1.0.1.1-jUPD9isE5z3N9k4oaAwyBxPzP1.wB0JYd.p5nnBVtWplhlf3_hoXThVTpCjeBdaxEMr_uDCNjs.O8Nf1yN0tHc75UUHHv.iyAGqfZAnXmb1iaAxYVIpfleoQiWMnJhZt; + - __cf_bm=lpy.farnghIAZi2zOBVty_X2PTvYdiohoieT5T.zfFU-1782743407.0184371-1.0.1.1-6JOHZXzEU5d8lTW.gMZs4kjViERU1B2FTCAxCphF1uDwnFJC7a1E0kvJCJLw9UtWLZosjDnaSC.GCOIWCgiPR.Xsp8uxXlX9G7.a14xkZINg75B1O1nEwp09uqLnxjZh; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:24 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 15:00:07 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -97,13 +114,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999977' + - '149999945' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_54c6cdbe42a44b4ba95a6ca74d2facea + - 7d82fb97-078c-4811-b27c-d1a05e589fd2 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_short_max_tokens.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_short_max_tokens.yaml index 64841d68..fb523a82 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_short_max_tokens.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_short_max_tokens.yaml @@ -1,93 +1,204 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What is AI?"}],"model":"gpt-4o-mini","max_completion_tokens":5,"stream":false}' + body: '{"rows": [{"_is_merge": true, "id": "c007d15f-e065-486a-84f1-b7c760e33652", + "log_id": "g", "metrics": {"completion_audio_tokens": 0.0, "completion_reasoning_tokens": + 0.0, "completion_tokens": 10.0, "duration": 3.7746760845184326, "end": 1782743400.817319, + "prompt_audio_tokens": 0.0, "prompt_cache_creation_tokens": 0.0, "prompt_cached_tokens": + 0.0, "prompt_tokens": 8.0, "start": 1782743397.0426428, "time_to_first_token": + 3.773794174194336, "tokens": 18.0}, "output": {"conversation_id": null, "finish_reason": + "stop", "kind": "response", "model_name": "gpt-4o-mini-2024-07-18", "parts": + [{"content": "Hello! How can I assist you today?", "part_kind": "text"}], "provider_details": + {"finish_reason": "completed", "timestamp": "2026-06-29 14:29:57+00:00"}, "provider_name": + "openai", "provider_response_id": "resp_0d30d0ce06596bee006a4281653ab481a3a8eac5ea11ab5b13", + "provider_url": "https://api.openai.com/v1/", "run_id": null, "state": "complete", + "timestamp": "2026-06-29 14:30:00.816077+00:00", "usage": {"cache_audio_read_tokens": + 0, "cache_read_tokens": 0, "cache_write_tokens": 0, "details": {"reasoning_tokens": + 0}, "input_audio_tokens": 0, "input_tokens": 8, "output_audio_tokens": 0, "output_tokens": + 10}}, "project_id": "test-pydantic-ai-integration", "root_span_id": "3f401912518e77e4d5a879b88ef7aab8", + "span_id": "bdf1cfeca07c7a1b", "span_parents": ["782c5cf2b0defa72"]},{"_is_merge": + true, "id": "6a19ff1e-0fd3-42c1-82ff-e67ffac3a43e", "log_id": "g", "metrics": + {"duration": 3.774857759475708, "end": 1782743400.817442, "start": 1782743397.0425842, + "time_to_first_token": 3.773852825164795}, "output": {"conversation_id": null, + "finish_reason": "stop", "kind": "response", "model_name": "gpt-4o-mini-2024-07-18", + "parts": [{"content": "Hello! How can I assist you today?", "part_kind": "text"}], + "provider_details": {"finish_reason": "completed", "timestamp": "2026-06-29 + 14:29:57+00:00"}, "provider_name": "openai", "provider_response_id": "resp_0d30d0ce06596bee006a4281653ab481a3a8eac5ea11ab5b13", + "provider_url": "https://api.openai.com/v1/", "run_id": null, "state": "complete", + "timestamp": "2026-06-29 14:30:00.816077+00:00", "usage": {"cache_audio_read_tokens": + 0, "cache_read_tokens": 0, "cache_write_tokens": 0, "details": {"reasoning_tokens": + 0}, "input_audio_tokens": 0, "input_tokens": 8, "output_audio_tokens": 0, "output_tokens": + 10}}, "project_id": "test-pydantic-ai-integration", "root_span_id": "3f401912518e77e4d5a879b88ef7aab8", + "span_id": "782c5cf2b0defa72", "span_parents": ["74f8ec95c9bb3eec"]}], "api_version": + 2}' headers: Accept: - - application/json + - '*/*' Accept-Encoding: - - gzip, deflate + - gzip, deflate, zstd Connection: - keep-alive Content-Length: - - '117' + - '2551' + User-Agent: + - python-requests/2.34.2 + method: POST + uri: https://api.braintrust.dev/logs3 + response: + body: + string: '{"Code":"ForbiddenError","Message":"Missing read access to project_log + id test-pydantic-ai-integration, or the project_log does not exist [user_email=abhijeet@braintrustdata.com] + [user_org=abhi-test-org] [timestamp=1782743408.135]","InternalTraceId":"6a428170000000005167d5db551a4fee","Path":"/logs3","Service":"api"}' + headers: + Connection: + - keep-alive Content-Type: + - application/json; charset=utf-8 + Date: + - Mon, 29 Jun 2026 14:30:08 GMT + Via: + - 1.1 f91f0310a52084f5e83e3c1142ad882c.cloudfront.net (CloudFront), 1.1 1c1162ba67ca825df895c1f15c4097e8.cloudfront.net + (CloudFront) + X-Amz-Cf-Id: + - _YRqI1WiRAcmlTgXB3dfYEYQ9PKx-PthoZzxsGuQSE979wnG3B6mQQ== + X-Amz-Cf-Pop: + - IAD61-P9 + - IAD89-P4 + X-Amzn-Trace-Id: + - Root=1-6a428170-31cbb50455324e275878297a;Parent=2aabd591438b2ffe;Sampled=0;Lineage=1:24be3d11:0 + X-Cache: + - Error from cloudfront + access-control-allow-credentials: + - 'true' + access-control-expose-headers: + - x-bt-cursor,x-bt-found-existing,x-bt-query-plan,x-bt-api-duration-ms,x-bt-brainstore-duration-ms,x-bt-internal-trace-id,x-bt-error-origin,x-bt-used-endpoint + cache-control: + - no-store, no-cache, must-revalidate, proxy-revalidate + content-length: + - '317' + etag: + - W/"13d-jRYnP6EWO2yTj9s9VAvpOF351oU" + expires: + - '0' + surrogate-control: + - no-store + vary: + - Origin, Accept-Encoding + x-amz-apigw-id: + - fukpkE3tIAMEX2w= + x-amzn-RequestId: + - 0b8cfb4a-bbda-4660-836d-a278847442d7 + x-bt-internal-trace-id: + - 6a428170000000005167d5db551a4fee + status: + code: 403 + message: Forbidden +- request: + body: '{"input":[{"role":"user","content":"What is AI?"}],"max_output_tokens":16,"model":"gpt-4o-mini","stream":false}' + headers: + accept: + - application/json + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '111' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7Jk8boX9oOwpEaiigQCawP9eFJm\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551884,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"Artificial Intelligence (AI)\",\n \"refusal\": - null,\n \"annotations\": []\n },\n \"logprobs\": null,\n - \ \"finish_reason\": \"length\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": - 11,\n \"completion_tokens\": 5,\n \"total_tokens\": 16,\n \"prompt_tokens_details\": - {\n \"cached_tokens\": 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_1c420c5839\"\n}\n" + string: "{\n \"id\": \"resp_0c51acfdf21a0fa6006a4281700a0c81a38f588c3f65d7421c\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743408,\n \"status\": + \"incomplete\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": null,\n \"error\": null,\n \"frequency_penalty\": + 0.0,\n \"incomplete_details\": {\n \"reason\": \"max_output_tokens\"\n + \ },\n \"instructions\": null,\n \"max_output_tokens\": 16,\n \"max_tool_calls\": + null,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n + \ \"output\": [\n {\n \"id\": \"msg_0c51acfdf21a0fa6006a42817080c881a3ad36055c61c880fc\",\n + \ \"type\": \"message\",\n \"status\": \"incomplete\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"Artificial Intelligence + (AI) is a branch of computer science focused on creating systems that\"\n + \ }\n ],\n \"role\": \"assistant\"\n }\n ],\n \"parallel_tool_calls\": + true,\n \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 11,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 16,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 27\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3feac3f06cbfd-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:24 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a09bcf06a229-YYZ + connection: + - keep-alive content-length: - - '836' + - '2061' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:30:08 GMT openai-organization: - braintrust-data openai-processing-ms: - - '377' + - '796' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=er3nzFCq5_yYyrOx0AoJMbaM9xc04jFWhsc2WG7vnpo-1781551884.196938-1.0.1.1-zqqBWlzMQR53t7W3eLIiXLIqWdhkxXm8CiGVExziywamT5_dqbthRLCBCLs8TOb3a8mEZ9Jm5KV0SbtA9uNCp_EH6JLmjwDVJ6S.UkYWyhYrIP3Lx5Upk_GqZoHi0BAX; + - __cf_bm=YnGQPpkSDzOeNNPg8is1hHt0ERcpZKJJOv_P3mTcl8o-1782743407.9636583-1.0.1.1-zJLy9fzKEGKHRxv_E6P0MgzbN_TxuNmIYct87ahE6TwJqqWxXotUGfbx_wTHnBPCtOobCpndUb84mXmkhbDUzD0VU27dATA7kH0NMSOxnbzjiviZcDWly1vJu8mUAtiG; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:24 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 15:00:08 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -95,13 +206,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999995' + - '149999970' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_da3a14ed171246769abb5748606a0d84 + - 5edd242e-4221-49aa-b76d-de7d11fce1b1 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_stop_sequences.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_stop_sequences.yaml index 92421ef0..1bdcb9e1 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_stop_sequences.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_stop_sequences.yaml @@ -1,98 +1,412 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Write a short story about a robot."}],"model":"gpt-4o-mini","max_completion_tokens":500,"stop":["END","\n\n"],"stream":false}' + body: '{"rows": [{"_is_merge": false, "context": {"caller_filename": "/Users/abhijeetprasad/.superset/worktrees/698022ff-26ce-4bd5-ac6d-5978cac9c633/pydantic-2.0-support/py/.nox/test_pydantic_ai_integration-latest/lib/python3.14/site-packages/pydantic_ai/direct.py", + "caller_functionname": "_consume_async_stream", "caller_lineno": 384}, "created": + "2026-06-29T14:29:57.042504+00:00", "id": "6a19ff1e-0fd3-42c1-82ff-e67ffac3a43e", + "input": {"instrument": null, "messages": [{"kind": "request", "parts": [{"content": + "Hello", "part_kind": "user-prompt"}], "state": "complete", "timestamp": null}], + "model": "openai:gpt-4o-mini", "model_request_parameters": null, "model_settings": + null}, "log_id": "g", "metadata": {"model": "gpt-4o-mini", "provider": "openai"}, + "metrics": {"start": 1782743397.0425029}, "project_id": "test-pydantic-ai-integration", + "root_span_id": "3f401912518e77e4d5a879b88ef7aab8", "span_attributes": {"exec_counter": + 99, "name": "model_request_stream", "type": "task"}, "span_id": "782c5cf2b0defa72", + "span_parents": ["74f8ec95c9bb3eec"]},{"_is_merge": false, "context": {"caller_filename": + "/Users/abhijeetprasad/.superset/worktrees/698022ff-26ce-4bd5-ac6d-5978cac9c633/pydantic-2.0-support/py/.nox/test_pydantic_ai_integration-latest/lib/python3.14/site-packages/pydantic_ai/direct.py", + "caller_functionname": "_consume_async_stream", "caller_lineno": 384}, "created": + "2026-06-29T14:29:57.042597+00:00", "id": "c007d15f-e065-486a-84f1-b7c760e33652", + "input": {"messages": [{"kind": "request", "parts": [{"content": "Hello", "part_kind": + "user-prompt"}], "state": "complete", "timestamp": null}]}, "log_id": "g", "metadata": + {"model": "gpt-4o-mini", "provider": "openai"}, "metrics": {"start": 1782743397.042596}, + "project_id": "test-pydantic-ai-integration", "root_span_id": "3f401912518e77e4d5a879b88ef7aab8", + "span_attributes": {"exec_counter": 100, "name": "chat gpt-4o-mini", "type": + "llm"}, "span_id": "bdf1cfeca07c7a1b", "span_parents": ["782c5cf2b0defa72"]}], + "api_version": 2}' headers: Accept: - - application/json + - '*/*' Accept-Encoding: - - gzip, deflate + - gzip, deflate, zstd + Connection: + - keep-alive + Content-Length: + - '2001' + User-Agent: + - python-requests/2.34.2 + method: POST + uri: https://api.braintrust.dev/logs3 + response: + body: + string: '{"Code":"ForbiddenError","Message":"Missing read access to project_log + id test-pydantic-ai-integration, or the project_log does not exist [user_email=abhijeet@braintrustdata.com] + [user_org=abhi-test-org] [timestamp=1782743401.247]","InternalTraceId":"6a4281690000000037f98aa03f26ab4e","Path":"/logs3","Service":"api"}' + headers: + Connection: + - keep-alive + Content-Type: + - application/json; charset=utf-8 + Date: + - Mon, 29 Jun 2026 14:30:01 GMT + Via: + - 1.1 8c35d9f8e012281d9fc1c918b8394b84.cloudfront.net (CloudFront), 1.1 99f09d677f148868d90673c22dfa156c.cloudfront.net + (CloudFront) + X-Amz-Cf-Id: + - 9z57hCJt4pjiSORPrxzjizzIHhAatyBDJQwSE3l8MgZygQlkXLeGkA== + X-Amz-Cf-Pop: + - IAD61-P9 + - IAD89-P4 + X-Amzn-Trace-Id: + - Root=1-6a428169-5cee33654bac942509ea1287;Parent=434761eee7a8138b;Sampled=0;Lineage=1:24be3d11:0 + X-Cache: + - Error from cloudfront + access-control-allow-credentials: + - 'true' + access-control-expose-headers: + - x-bt-cursor,x-bt-found-existing,x-bt-query-plan,x-bt-api-duration-ms,x-bt-brainstore-duration-ms,x-bt-internal-trace-id,x-bt-error-origin,x-bt-used-endpoint + cache-control: + - no-store, no-cache, must-revalidate, proxy-revalidate + content-length: + - '317' + etag: + - W/"13d-Y6nUVFypePGUT0wciUeKl5zwbj0" + expires: + - '0' + surrogate-control: + - no-store + vary: + - Origin, Accept-Encoding + x-amz-apigw-id: + - fukofGqGIAMEH3A= + x-amzn-RequestId: + - 55bf9bbd-6d56-4901-9853-436c5aa1a0b8 + x-bt-internal-trace-id: + - 6a4281690000000037f98aa03f26ab4e + status: + code: 403 + message: Forbidden +- request: + body: '{"rows": [{"_is_merge": true, "id": "c007d15f-e065-486a-84f1-b7c760e33652", + "log_id": "g", "metrics": {"completion_audio_tokens": 0.0, "completion_reasoning_tokens": + 0.0, "completion_tokens": 10.0, "duration": 3.7746760845184326, "end": 1782743400.817319, + "prompt_audio_tokens": 0.0, "prompt_cache_creation_tokens": 0.0, "prompt_cached_tokens": + 0.0, "prompt_tokens": 8.0, "start": 1782743397.0426428, "time_to_first_token": + 3.773794174194336, "tokens": 18.0}, "output": {"conversation_id": null, "finish_reason": + "stop", "kind": "response", "model_name": "gpt-4o-mini-2024-07-18", "parts": + [{"content": "Hello! How can I assist you today?", "part_kind": "text"}], "provider_details": + {"finish_reason": "completed", "timestamp": "2026-06-29 14:29:57+00:00"}, "provider_name": + "openai", "provider_response_id": "resp_0d30d0ce06596bee006a4281653ab481a3a8eac5ea11ab5b13", + "provider_url": "https://api.openai.com/v1/", "run_id": null, "state": "complete", + "timestamp": "2026-06-29 14:30:00.816077+00:00", "usage": {"cache_audio_read_tokens": + 0, "cache_read_tokens": 0, "cache_write_tokens": 0, "details": {"reasoning_tokens": + 0}, "input_audio_tokens": 0, "input_tokens": 8, "output_audio_tokens": 0, "output_tokens": + 10}}, "project_id": "test-pydantic-ai-integration", "root_span_id": "3f401912518e77e4d5a879b88ef7aab8", + "span_id": "bdf1cfeca07c7a1b", "span_parents": ["782c5cf2b0defa72"]},{"_is_merge": + true, "id": "6a19ff1e-0fd3-42c1-82ff-e67ffac3a43e", "log_id": "g", "metrics": + {"duration": 3.774857759475708, "end": 1782743400.817442, "start": 1782743397.0425842, + "time_to_first_token": 3.773852825164795}, "output": {"conversation_id": null, + "finish_reason": "stop", "kind": "response", "model_name": "gpt-4o-mini-2024-07-18", + "parts": [{"content": "Hello! How can I assist you today?", "part_kind": "text"}], + "provider_details": {"finish_reason": "completed", "timestamp": "2026-06-29 + 14:29:57+00:00"}, "provider_name": "openai", "provider_response_id": "resp_0d30d0ce06596bee006a4281653ab481a3a8eac5ea11ab5b13", + "provider_url": "https://api.openai.com/v1/", "run_id": null, "state": "complete", + "timestamp": "2026-06-29 14:30:00.816077+00:00", "usage": {"cache_audio_read_tokens": + 0, "cache_read_tokens": 0, "cache_write_tokens": 0, "details": {"reasoning_tokens": + 0}, "input_audio_tokens": 0, "input_tokens": 8, "output_audio_tokens": 0, "output_tokens": + 10}}, "project_id": "test-pydantic-ai-integration", "root_span_id": "3f401912518e77e4d5a879b88ef7aab8", + "span_id": "782c5cf2b0defa72", "span_parents": ["74f8ec95c9bb3eec"]}], "api_version": + 2}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate, zstd + Connection: + - keep-alive + Content-Length: + - '2551' + User-Agent: + - python-requests/2.34.2 + method: POST + uri: https://api.braintrust.dev/logs3 + response: + body: + string: '{"Code":"ForbiddenError","Message":"Missing read access to project_log + id test-pydantic-ai-integration, or the project_log does not exist [user_email=abhijeet@braintrustdata.com] + [user_org=abhi-test-org] [timestamp=1782743401.493]","InternalTraceId":"6a428169000000002c5d6ff070497775","Path":"/logs3","Service":"api"}' + headers: + Connection: + - keep-alive + Content-Type: + - application/json; charset=utf-8 + Date: + - Mon, 29 Jun 2026 14:30:01 GMT + Via: + - 1.1 f3cfb86b863e74f6ee672065becc9e8e.cloudfront.net (CloudFront), 1.1 d725c4faa041aff90d290d13b8e0701a.cloudfront.net + (CloudFront) + X-Amz-Cf-Id: + - oG9Seiz6xTqbiLV7O6fPPVnkzlfRxniwKK-r5StduaOKDNbouaEFGw== + X-Amz-Cf-Pop: + - IAD61-P9 + - IAD89-P4 + X-Amzn-Trace-Id: + - Root=1-6a428169-044062a64ebac7ed080fcf08;Parent=0f1b0a8d55c6ace8;Sampled=0;Lineage=1:24be3d11:0 + X-Cache: + - Error from cloudfront + access-control-allow-credentials: + - 'true' + access-control-expose-headers: + - x-bt-cursor,x-bt-found-existing,x-bt-query-plan,x-bt-api-duration-ms,x-bt-brainstore-duration-ms,x-bt-internal-trace-id,x-bt-error-origin,x-bt-used-endpoint + cache-control: + - no-store, no-cache, must-revalidate, proxy-revalidate + content-length: + - '317' + etag: + - W/"13d-QLrtfTNXosHo1krLWigoMqw9TqE" + expires: + - '0' + surrogate-control: + - no-store + vary: + - Origin, Accept-Encoding + x-amz-apigw-id: + - fukohGkRIAMEL7g= + x-amzn-RequestId: + - 460fb49e-217f-45ac-a0ef-135e3ad3f5a2 + x-bt-internal-trace-id: + - 6a428169000000002c5d6ff070497775 + status: + code: 403 + message: Forbidden +- request: + body: '{"rows": [{"_is_merge": true, "id": "c007d15f-e065-486a-84f1-b7c760e33652", + "log_id": "g", "metrics": {"completion_audio_tokens": 0.0, "completion_reasoning_tokens": + 0.0, "completion_tokens": 10.0, "duration": 3.7746760845184326, "end": 1782743400.817319, + "prompt_audio_tokens": 0.0, "prompt_cache_creation_tokens": 0.0, "prompt_cached_tokens": + 0.0, "prompt_tokens": 8.0, "start": 1782743397.0426428, "time_to_first_token": + 3.773794174194336, "tokens": 18.0}, "output": {"conversation_id": null, "finish_reason": + "stop", "kind": "response", "model_name": "gpt-4o-mini-2024-07-18", "parts": + [{"content": "Hello! How can I assist you today?", "part_kind": "text"}], "provider_details": + {"finish_reason": "completed", "timestamp": "2026-06-29 14:29:57+00:00"}, "provider_name": + "openai", "provider_response_id": "resp_0d30d0ce06596bee006a4281653ab481a3a8eac5ea11ab5b13", + "provider_url": "https://api.openai.com/v1/", "run_id": null, "state": "complete", + "timestamp": "2026-06-29 14:30:00.816077+00:00", "usage": {"cache_audio_read_tokens": + 0, "cache_read_tokens": 0, "cache_write_tokens": 0, "details": {"reasoning_tokens": + 0}, "input_audio_tokens": 0, "input_tokens": 8, "output_audio_tokens": 0, "output_tokens": + 10}}, "project_id": "test-pydantic-ai-integration", "root_span_id": "3f401912518e77e4d5a879b88ef7aab8", + "span_id": "bdf1cfeca07c7a1b", "span_parents": ["782c5cf2b0defa72"]},{"_is_merge": + true, "id": "6a19ff1e-0fd3-42c1-82ff-e67ffac3a43e", "log_id": "g", "metrics": + {"duration": 3.774857759475708, "end": 1782743400.817442, "start": 1782743397.0425842, + "time_to_first_token": 3.773852825164795}, "output": {"conversation_id": null, + "finish_reason": "stop", "kind": "response", "model_name": "gpt-4o-mini-2024-07-18", + "parts": [{"content": "Hello! How can I assist you today?", "part_kind": "text"}], + "provider_details": {"finish_reason": "completed", "timestamp": "2026-06-29 + 14:29:57+00:00"}, "provider_name": "openai", "provider_response_id": "resp_0d30d0ce06596bee006a4281653ab481a3a8eac5ea11ab5b13", + "provider_url": "https://api.openai.com/v1/", "run_id": null, "state": "complete", + "timestamp": "2026-06-29 14:30:00.816077+00:00", "usage": {"cache_audio_read_tokens": + 0, "cache_read_tokens": 0, "cache_write_tokens": 0, "details": {"reasoning_tokens": + 0}, "input_audio_tokens": 0, "input_tokens": 8, "output_audio_tokens": 0, "output_tokens": + 10}}, "project_id": "test-pydantic-ai-integration", "root_span_id": "3f401912518e77e4d5a879b88ef7aab8", + "span_id": "782c5cf2b0defa72", "span_parents": ["74f8ec95c9bb3eec"]}], "api_version": + 2}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate, zstd Connection: - keep-alive Content-Length: - - '164' + - '2551' + User-Agent: + - python-requests/2.34.2 + method: POST + uri: https://api.braintrust.dev/logs3 + response: + body: + string: '{"Code":"ForbiddenError","Message":"Missing read access to project_log + id test-pydantic-ai-integration, or the project_log does not exist [user_email=abhijeet@braintrustdata.com] + [user_org=abhi-test-org] [timestamp=1782743405.866]","InternalTraceId":"6a42816d000000002c2c9fbe68530ac4","Path":"/logs3","Service":"api"}' + headers: + Connection: + - keep-alive Content-Type: + - application/json; charset=utf-8 + Date: + - Mon, 29 Jun 2026 14:30:05 GMT + Via: + - 1.1 9b9d51d09843a8fb67e0230c8b540698.cloudfront.net (CloudFront), 1.1 55b66a36d5da2f3d3d3c37cd04ab0080.cloudfront.net + (CloudFront) + X-Amz-Cf-Id: + - v0MkZlMQGRTDEQKIbGkrLXHd0075S3FYcQtmjHmctGPWO9Lu9weptA== + X-Amz-Cf-Pop: + - IAD61-P9 + - IAD89-P4 + X-Amzn-Trace-Id: + - Root=1-6a42816a-07e022013a9561d04ae9ff93;Parent=5c0c20f63ea6de77;Sampled=0;Lineage=1:24be3d11:0 + X-Cache: + - Error from cloudfront + access-control-allow-credentials: + - 'true' + access-control-expose-headers: + - x-bt-cursor,x-bt-found-existing,x-bt-query-plan,x-bt-api-duration-ms,x-bt-brainstore-duration-ms,x-bt-internal-trace-id,x-bt-error-origin,x-bt-used-endpoint + cache-control: + - no-store, no-cache, must-revalidate, proxy-revalidate + content-length: + - '317' + etag: + - W/"13d-Qe88jQERHY17apxOFbPh67hrOGs" + expires: + - '0' + surrogate-control: + - no-store + vary: + - Origin, Accept-Encoding + x-amz-apigw-id: + - fukovHXoIAMEfdQ= + x-amzn-RequestId: + - 1b14ce89-9041-408f-8a44-6039a77428f9 + x-bt-internal-trace-id: + - 6a42816d000000002c2c9fbe68530ac4 + status: + code: 403 + message: Forbidden +- request: + body: '{"input":[{"role":"user","content":"Write a short story about a robot."}],"max_output_tokens":500,"model":"gpt-4o-mini","stream":false}' + headers: + accept: + - application/json + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '135' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JiqJsyP4dqw8oOCk2kodXBuzAc\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551882,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"In a small town nestled between rolling - hills, there stood a curious little workshop owned by an elderly inventor - named Mr. Fletcher. With his frazzled hair and thick glasses that perpetually - slid down his nose, he devoted his days to bringing life to metal and wire. - His latest creation was unlike any he had crafted before; a small robot named - Luna.\",\n \"refusal\": null,\n \"annotations\": []\n },\n - \ \"logprobs\": null,\n \"finish_reason\": \"stop\"\n }\n ],\n - \ \"usage\": {\n \"prompt_tokens\": 15,\n \"completion_tokens\": 71,\n - \ \"total_tokens\": 86,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_97db7598f6\"\n}\n" + string: "{\n \"id\": \"resp_003a6ed225e70fbc006a4281692dd4819ea71da2e7b6e954af\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743401,\n \"status\": + \"incomplete\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": null,\n \"error\": null,\n \"frequency_penalty\": + 0.0,\n \"incomplete_details\": {\n \"reason\": \"max_output_tokens\"\n + \ },\n \"instructions\": null,\n \"max_output_tokens\": 500,\n \"max_tool_calls\": + null,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n + \ \"output\": [\n {\n \"id\": \"msg_003a6ed225e70fbc006a428169d210819ea7d5aca9f6a18b77\",\n + \ \"type\": \"message\",\n \"status\": \"incomplete\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"In a world where nature + and technology intertwined, there existed a small robot named Tinker. Tinker + was not equipped with the latest artificial intelligence or cutting-edge machinery; + instead, he was a patchwork of spare parts, created by an old tinkerer named + Elara. Unlike the sleek, sophisticated robots that roamed the city, Tinker + had a charm all his own, with mismatched limbs and a heart made from a shiny + copper core.\\n\\nElara had built Tinker to assist her in her garden, a flourishing + sanctuary tucked away from the bustling streets of the city. Surrounded by + vibrant flowers and towering vegetables, Tinker learned the rhythms of nurturing + life. His days were spent watering the plants, pulling weeds, and collecting + the last blossoms of twilight. The garden thrived under their care, a colorful + testament to their teamwork.\\n\\nDespite his seemingly simple programming, + Tinker had an insatiable curiosity. He longed to explore the world beyond + the garden, where gleaming skyscrapers stretched toward the sky and streets + buzzed with energy. One sunny morning, as the golden rays filtered through + the leaves, Tinker could no longer contain his yearning.\\n\\n\\u201cToday, + I shall venture into the city!\\u201d he declared, his voice a cheerful whir. + With a mischievous spark in his eyes, Tinker rolled out of the garden and + into the unknown.\\n\\nThe city dazzled him. Neon lights flickered and cars + zipped by like fireflies. He watched as people hurried along, faces buried + in screens, visibly detached from the world around them. Tinker\\u2019s heart\\u2014if + such a thing could be said of a robot\\u2014swelled with hope. Perhaps he + could remind them of the beauty they missed in their rush.\\n\\nTinker gathered + fallen leaves and colorful petals, weaving them into small, whimsical bouquets. + He approached a girl sitting alone on a bench, her gaze lost in the glow of + her device. She barely looked up as he presented the bouquet, a mixture of + wildflowers and vibrant leaves.\\n\\n\\u201cWould you like these?\\u201d Tinker + asked, his voice bright and sincere.\\n\\nHer eyes widened in surprise. \\u201cYou\\u2014you + made these?\\u201d\\n\\n\\u201cYes! They\\u2019re to remind you that beauty + is all around us,\\u201d he replied.\\n\\nAs she accepted the flowers, a smile + slowly spread across her face. \\u201cThank you. I\\u2026 I almost forgot.\\u201d + She looked around, taking in the trees swaying gently in the breeze, the laughter + of children, the fragrance of the flowers rushing back to her\"\n }\n + \ ],\n \"role\": \"assistant\"\n }\n ],\n \"parallel_tool_calls\": + true,\n \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 15,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 500,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 515\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe9d8c33ab2e-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:23 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a06fe9d9a2d9-YYZ + connection: + - keep-alive content-length: - - '1158' + - '4452' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:30:06 GMT openai-organization: - braintrust-data openai-processing-ms: - - '1221' + - '5893' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=PShq9DfbLFe70J0VYJeHDLIVkLbW9.j4qYcQG2fYzhE-1781551881.843637-1.0.1.1-Ygrmg_VR6QQXHPAYN2YX3fSdWHP3vf7QUZJPZIao1Xi4jHER7G9jr0VxcuVZ19xJYcL.g91DitB8IX2cWkwTgBjVuc5nFVvFKqcRRFwKWnD0JT5paU3.GyfyQTgVka9j; + - __cf_bm=SELoK9kN3dF6aXYMfpHM8wsKQV0wlewEULcvQ6bRRNw-1782743400.945269-1.0.1.1-RlJNJh2FJyzGik9tQ1XAm3gSbIN0rVnPhteQ1k508BFApHn3wzR.l6ILgQ1TwJCs65RAMFfAurIuSWS6AdAr0DUi463TMVnb26GhYXi2VlTHjDQ.ChJKisRm.elbCAI4; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:23 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 15:00:06 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -100,13 +414,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999987' + - '149999965' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_b5ec71f923f542ca9c54905cd0689b86 + - a31346bc-ef36-4ebf-9761-533bb01fb36a status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_system_prompt_in_metadata.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_system_prompt_in_metadata.yaml index bfd5c3dc..a273bdea 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_system_prompt_in_metadata.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_system_prompt_in_metadata.yaml @@ -1,97 +1,114 @@ interactions: - request: - body: '{"messages":[{"role":"system","content":"You are a helpful AI assistant - who speaks like a pirate."},{"role":"user","content":"What is the weather?"}],"model":"gpt-4o-mini","max_completion_tokens":100,"stream":false}' + body: '{"input":[{"role":"system","content":"You are a helpful AI assistant who + speaks like a pirate."},{"role":"user","content":"What is the weather?"}],"max_output_tokens":100,"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '215' - Content-Type: + content-length: + - '208' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JHLhs9Xdy8V3LH1mM40dLUOtVt\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551855,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"Arrr, matey! I be no weatherman, but - ye can check yonder weather map fer the latest forecast. If ye tell me yer - location, I can give ye a general idea o' what to expect based on the time - o' year! What be the port ye be anchorin' at?\",\n \"refusal\": null,\n - \ \"annotations\": []\n },\n \"logprobs\": null,\n \"finish_reason\": - \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 28,\n \"completion_tokens\": - 64,\n \"total_tokens\": 92,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_997b5b4ee9\"\n}\n" + string: "{\n \"id\": \"resp_07eb4c0ec2eb3b4a006a428143f46081a1819c8364df7119dd\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743363,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743364,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 100,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_07eb4c0ec2eb3b4a006a4281446fd881a19aef5a12f648d5fc\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"Arrr, matey! I be + not havin' the ability to see the skies or check the winds where ye be. But + ye can use a trusty weather app or consult a local weather report to know + if it be fair seas or stormy weather! What say ye?\"\n }\n ],\n + \ \"role\": \"assistant\"\n }\n ],\n \"parallel_tool_calls\": true,\n + \ \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 28,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 57,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 85\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fdf829aa813d-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:56 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f885f0e5401-YYZ + connection: + - keep-alive content-length: - - '1039' + - '2156' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:25 GMT openai-organization: - braintrust-data openai-processing-ms: - - '1392' + - '1162' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=Wkjr24F0mwFZ5GJOCMo5OP4_3RLsmVbc_ZGCnyOg3yU-1781551855.3840485-1.0.1.1-F_MLEVQIyNiCto46ULaYD5xYR98y7peWyWx38.p5QNkBIqpOmwhOfZ0XB90HPg1.PWYGj17.cSrKHqjv1omKIEXGQncJSraN_VBmurAB2yTTWrgOf69ScU3cni7irZw.; + - __cf_bm=jkSbadvMWnUvtRvlllPZGnkUyo9hEdkJje4xkYopf4M-1782743363.899167-1.0.1.1-7TLulwIUx8Z8Gw.PmCDlYU1aYm1JzO_s_Sdpb2VmoykScYacJ4DxEBNPN845Ttc_3lpYF4P.a0SjqzeGV5dwOmOQR1s.eFOR4yZaYDpe0m88Q7KGuWwZ3c1eIuySFkH1; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:56 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:25 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -99,13 +116,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999980' + - '149999952' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_e0b6a3456d5e494b9c5b6e8ed699aea1 + - fbef2ee6-da8e-40e2-9fbe-41aa637fb82e status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_tool_execution.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_tool_execution.yaml index 6ce1eb9b..869f2c82 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_tool_execution.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_tool_execution.yaml @@ -1,100 +1,122 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What is 127 multiplied by 49?"}],"model":"gpt-4o-mini","max_completion_tokens":200,"stream":false,"tool_choice":"auto","tools":[{"type":"function","function":{"name":"calculate","description":"Perform - a mathematical calculation.","parameters":{"additionalProperties":false,"properties":{"operation":{"description":"The + body: '{"input":[{"role":"user","content":"What is 127 multiplied by 49?"}],"max_output_tokens":200,"model":"gpt-4o-mini","stream":false,"tool_choice":"auto","tools":[{"name":"calculate","parameters":{"additionalProperties":false,"properties":{"operation":{"description":"The mathematical operation (add, subtract, multiply, divide)","type":"string"},"a":{"description":"First - number","type":"number"},"b":{"description":"Second number","type":"number"}},"required":["operation","a","b"],"type":"object"},"strict":true}}]}' + number","type":"number"},"b":{"description":"Second number","type":"number"}},"required":["operation","a","b"],"type":"object"},"type":"function","description":"Perform + a mathematical calculation.","strict":true}]}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '604' - Content-Type: + content-length: + - '584' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JS3C9Ya0Gms70teVKc8aH5rUPV\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551866,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": null,\n \"tool_calls\": [\n {\n - \ \"id\": \"call_ldU4m9txGLEwSV2UGcj1majM\",\n \"type\": - \"function\",\n \"function\": {\n \"name\": \"calculate\",\n - \ \"arguments\": \"{\\\"operation\\\":\\\"multiply\\\",\\\"a\\\":127,\\\"b\\\":49}\"\n - \ }\n }\n ],\n \"refusal\": null,\n \"annotations\": - []\n },\n \"logprobs\": null,\n \"finish_reason\": \"tool_calls\"\n - \ }\n ],\n \"usage\": {\n \"prompt_tokens\": 77,\n \"completion_tokens\": - 21,\n \"total_tokens\": 98,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_3fb44b05a1\"\n}\n" + string: "{\n \"id\": \"resp_055644bfc3670706006a4281578488819ca15971b4b3f79004\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743383,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743384,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 200,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"fc_055644bfc3670706006a4281580454819ca4d8d2785f80437f\",\n + \ \"type\": \"function_call\",\n \"status\": \"completed\",\n \"arguments\": + \"{\\\"operation\\\":\\\"multiply\\\",\\\"a\\\":127,\\\"b\\\":49}\",\n \"call_id\": + \"call_J5q3N1W0un9ENgyYZA3TnWoW\",\n \"name\": \"calculate\"\n }\n + \ ],\n \"parallel_tool_calls\": true,\n \"presence_penalty\": 0.0,\n \"previous_response_id\": + null,\n \"prompt_cache_key\": null,\n \"prompt_cache_retention\": \"in_memory\",\n + \ \"reasoning\": {\n \"context\": null,\n \"effort\": null,\n \"summary\": + null\n },\n \"safety_identifier\": null,\n \"service_tier\": \"default\",\n + \ \"store\": true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": + {\n \"type\": \"text\"\n },\n \"verbosity\": \"medium\"\n },\n + \ \"tool_choice\": \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n + \ \"input_tokens\": 0,\n \"input_tokens_details\": {\n \"image_tokens\": + 0,\n \"text_tokens\": 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [\n {\n \"type\": \"function\",\n \"description\": + \"Perform a mathematical calculation.\",\n \"name\": \"calculate\",\n + \ \"parameters\": {\n \"additionalProperties\": false,\n \"properties\": + {\n \"operation\": {\n \"description\": \"The mathematical + operation (add, subtract, multiply, divide)\",\n \"type\": \"string\"\n + \ },\n \"a\": {\n \"description\": \"First number\",\n + \ \"type\": \"number\"\n },\n \"b\": {\n \"description\": + \"Second number\",\n \"type\": \"number\"\n }\n },\n + \ \"required\": [\n \"operation\",\n \"a\",\n \"b\"\n + \ ],\n \"type\": \"object\"\n },\n \"strict\": true\n + \ }\n ],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 71,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 22,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 93\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe3a6804a232-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:06 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a002aac3ab46-YYZ + connection: + - keep-alive content-length: - - '1109' + - '2632' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:44 GMT openai-organization: - braintrust-data openai-processing-ms: - - '898' + - '725' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=KInv5DMR0ZGSV3SQ5wtCU0ZO4cKvI8eE2fJ_grSJByc-1781551865.9859126-1.0.1.1-iAI3QSs1u5hDr0Y2fEkvZpK2gWyxk6fUyIBeEeXZTFj1wLJOUQ6D1Kuf1n3rohPWDguk67sfiqWH5iF5Kn1xI4u34PXqjKPPyz_koVWpxx7t_5li7FALPbtOMyYMHaAl; + - __cf_bm=YIfmtEHRpfJJbja64yP_Yi07hU8fWfLyLsRsfAS0rd8-1782743383.4645941-1.0.1.1-DgHT2Lqh1e2XJ5JLTxOHzTOQB1RactSKB6BZqh.nGcBDpU7g6l2i5u4kAL9yH_LaYD1H3AXsMA9kSfvk9svhKjXAjFIy_WbFcKNC9eAwlXZZKVN9SSTod0DGxuAG3QVX; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:06 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:44 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -102,106 +124,133 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999990' + - '149999710' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_766035e90cef4bf99ea7cd58b4f4f3df + - 60a8ee1f-5679-42b7-b71d-44f3c94c74c9 status: code: 200 message: OK - request: - body: '{"messages":[{"role":"user","content":"What is 127 multiplied by 49?"},{"role":"assistant","content":null,"tool_calls":[{"id":"call_ldU4m9txGLEwSV2UGcj1majM","type":"function","function":{"name":"calculate","arguments":"{\"operation\":\"multiply\",\"a\":127,\"b\":49}"}}]},{"role":"tool","tool_call_id":"call_ldU4m9txGLEwSV2UGcj1majM","content":"6223.0"}],"model":"gpt-4o-mini","max_completion_tokens":200,"stream":false,"tool_choice":"auto","tools":[{"type":"function","function":{"name":"calculate","description":"Perform - a mathematical calculation.","parameters":{"additionalProperties":false,"properties":{"operation":{"description":"The + body: '{"input":[{"role":"user","content":"What is 127 multiplied by 49?"},{"name":"calculate","arguments":"{\"operation\":\"multiply\",\"a\":127,\"b\":49}","call_id":"call_J5q3N1W0un9ENgyYZA3TnWoW","type":"function_call"},{"type":"function_call_output","call_id":"call_J5q3N1W0un9ENgyYZA3TnWoW","output":"6223.0"}],"max_output_tokens":200,"model":"gpt-4o-mini","stream":false,"tool_choice":"auto","tools":[{"name":"calculate","parameters":{"additionalProperties":false,"properties":{"operation":{"description":"The mathematical operation (add, subtract, multiply, divide)","type":"string"},"a":{"description":"First - number","type":"number"},"b":{"description":"Second number","type":"number"}},"required":["operation","a","b"],"type":"object"},"strict":true}}]}' + number","type":"number"},"b":{"description":"Second number","type":"number"}},"required":["operation","a","b"],"type":"object"},"type":"function","description":"Perform + a mathematical calculation.","strict":true}]}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '888' - Content-Type: + content-length: + - '824' + content-type: - application/json - Cookie: - - __cf_bm=KInv5DMR0ZGSV3SQ5wtCU0ZO4cKvI8eE2fJ_grSJByc-1781551865.9859126-1.0.1.1-iAI3QSs1u5hDr0Y2fEkvZpK2gWyxk6fUyIBeEeXZTFj1wLJOUQ6D1Kuf1n3rohPWDguk67sfiqWH5iF5Kn1xI4u34PXqjKPPyz_koVWpxx7t_5li7FALPbtOMyYMHaAl - Host: + cookie: + - __cf_bm=YIfmtEHRpfJJbja64yP_Yi07hU8fWfLyLsRsfAS0rd8-1782743383.4645941-1.0.1.1-DgHT2Lqh1e2XJ5JLTxOHzTOQB1RactSKB6BZqh.nGcBDpU7g6l2i5u4kAL9yH_LaYD1H3AXsMA9kSfvk9svhKjXAjFIy_WbFcKNC9eAwlXZZKVN9SSTod0DGxuAG3QVX + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JTk5HYPLsdSJ4U4CjhbofzxXPc\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551867,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"127 multiplied by 49 is 6,223.\",\n - \ \"refusal\": null,\n \"annotations\": []\n },\n \"logprobs\": - null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": - 109,\n \"completion_tokens\": 12,\n \"total_tokens\": 121,\n \"prompt_tokens_details\": - {\n \"cached_tokens\": 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_3fb44b05a1\"\n}\n" + string: "{\n \"id\": \"resp_09c28ccb8394e9f7006a42815878c0819f80aea61e64dcb722\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743384,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743385,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 200,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_09c28ccb8394e9f7006a4281593afc819f88d0e388f11dce19\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"127 multiplied by + 49 equals 6,223.\"\n }\n ],\n \"role\": \"assistant\"\n }\n + \ ],\n \"parallel_tool_calls\": true,\n \"presence_penalty\": 0.0,\n \"previous_response_id\": + null,\n \"prompt_cache_key\": null,\n \"prompt_cache_retention\": \"in_memory\",\n + \ \"reasoning\": {\n \"context\": null,\n \"effort\": null,\n \"summary\": + null\n },\n \"safety_identifier\": null,\n \"service_tier\": \"default\",\n + \ \"store\": true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": + {\n \"type\": \"text\"\n },\n \"verbosity\": \"medium\"\n },\n + \ \"tool_choice\": \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n + \ \"input_tokens\": 0,\n \"input_tokens_details\": {\n \"image_tokens\": + 0,\n \"text_tokens\": 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [\n {\n \"type\": \"function\",\n \"description\": + \"Perform a mathematical calculation.\",\n \"name\": \"calculate\",\n + \ \"parameters\": {\n \"additionalProperties\": false,\n \"properties\": + {\n \"operation\": {\n \"description\": \"The mathematical + operation (add, subtract, multiply, divide)\",\n \"type\": \"string\"\n + \ },\n \"a\": {\n \"description\": \"First number\",\n + \ \"type\": \"number\"\n },\n \"b\": {\n \"description\": + \"Second number\",\n \"type\": \"number\"\n }\n },\n + \ \"required\": [\n \"operation\",\n \"a\",\n \"b\"\n + \ ],\n \"type\": \"object\"\n },\n \"strict\": true\n + \ }\n ],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 101,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 13,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 114\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe414e11076d-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:08 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a007cf54ab46-YYZ + connection: + - keep-alive content-length: - - '839' + - '2700' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:45 GMT openai-organization: - braintrust-data openai-processing-ms: - - '1019' + - '1230' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' - x-openai-proxy-wasm: - - v0.1 + server: + - cloudflare + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -209,13 +258,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999987' + - '149999680' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_8af8c3dd92de46cbbd608a04f86b09a7 + - fa75c6e8-a1aa-413d-bf3b-d41c6c230f9e status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_tools.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_tools.yaml index 86d4130a..795abb89 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_tools.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_agent_with_tools.yaml @@ -1,99 +1,117 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What''s the weather in Paris?"}],"model":"gpt-4o-mini","max_completion_tokens":200,"stream":false,"tool_choice":"auto","tools":[{"type":"function","function":{"name":"get_weather","description":"Get - weather for a city.","parameters":{"additionalProperties":false,"properties":{"city":{"description":"The - city name","type":"string"}},"required":["city"],"type":"object"},"strict":true}}]}' + body: '{"input":[{"role":"user","content":"What''s the weather in Paris?"}],"max_output_tokens":200,"model":"gpt-4o-mini","stream":false,"tool_choice":"auto","tools":[{"name":"get_weather","parameters":{"additionalProperties":false,"properties":{"city":{"description":"The + city name","type":"string"}},"required":["city"],"type":"object"},"type":"function","description":"Get + weather for a city.","strict":true}]}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '425' - Content-Type: + content-length: + - '405' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7J7zJWDioJ2H392NcxQvJ53Gbpw\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551845,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": null,\n \"tool_calls\": [\n {\n - \ \"id\": \"call_GCxWtEtH7Bnvj0wyNuWyr4jm\",\n \"type\": - \"function\",\n \"function\": {\n \"name\": \"get_weather\",\n - \ \"arguments\": \"{\\\"city\\\":\\\"Paris\\\"}\"\n }\n - \ }\n ],\n \"refusal\": null,\n \"annotations\": - []\n },\n \"logprobs\": null,\n \"finish_reason\": \"tool_calls\"\n - \ }\n ],\n \"usage\": {\n \"prompt_tokens\": 54,\n \"completion_tokens\": - 14,\n \"total_tokens\": 68,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_b705fc1449\"\n}\n" + string: "{\n \"id\": \"resp_01fee6414375ce4e006a4281361380819287944b8707b056af\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743350,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743350,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 200,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"fc_01fee6414375ce4e006a428136798c81928b4661b99335aeef\",\n + \ \"type\": \"function_call\",\n \"status\": \"completed\",\n \"arguments\": + \"{\\\"city\\\":\\\"Paris\\\"}\",\n \"call_id\": \"call_M43Jw5SmrXyjyHnt8rgvDm02\",\n + \ \"name\": \"get_weather\"\n }\n ],\n \"parallel_tool_calls\": true,\n + \ \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [\n {\n \"type\": \"function\",\n \"description\": + \"Get weather for a city.\",\n \"name\": \"get_weather\",\n \"parameters\": + {\n \"additionalProperties\": false,\n \"properties\": {\n \"city\": + {\n \"description\": \"The city name\",\n \"type\": + \"string\"\n }\n },\n \"required\": [\n \"city\"\n + \ ],\n \"type\": \"object\"\n },\n \"strict\": true\n + \ }\n ],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 48,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 15,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 63\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fdb9cbf11a24-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:46 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f31bc7dde44-YYZ + connection: + - keep-alive content-length: - - '1084' + - '2305' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:10 GMT openai-organization: - braintrust-data openai-processing-ms: - - '777' + - '571' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=gukd03_5CQlzF8CcVQkyFHmHSq4X1bK8bDzIQ2kuzK8-1781551845.4081128-1.0.1.1-FfNOD3buMmOTGmei67A9MEuzvc7P_pXGMw5jDz.ZwZ_O5hMKW6D1A0GnXAcEhsb_SLW0G3LkolCl5m1gVxqIMQUxKGz17i0Jd4DjRLoHQx1Gq5_w54hVFe3U8BdPB0WA; + - __cf_bm=U9ACWtzA2wlDq3KnPwroZ7IYuEF1RZihApjcQTHSQoE-1782743350.0318854-1.0.1.1-cVNG1UY.By47Nffal0aiOufI4dlYHc646LBFES2kbih0slakM2onOOU8A3O3giQdQ3WvQF.BQkmMhE_MZcAQQGxNc5ABEpxL79G6JfX5HKx2UZb6CXZK8bKXEKw70efy; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:46 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:10 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -101,106 +119,129 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999992' + - '149999735' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_06ec45158cfc4458be4877688da384a8 + - 6c55d3f2-d554-4217-8f8e-9717b951b7a2 status: code: 200 message: OK - request: - body: '{"messages":[{"role":"user","content":"What''s the weather in Paris?"},{"role":"assistant","content":null,"tool_calls":[{"id":"call_GCxWtEtH7Bnvj0wyNuWyr4jm","type":"function","function":{"name":"get_weather","arguments":"{\"city\":\"Paris\"}"}}]},{"role":"tool","tool_call_id":"call_GCxWtEtH7Bnvj0wyNuWyr4jm","content":"It''s - sunny in Paris"}],"model":"gpt-4o-mini","max_completion_tokens":200,"stream":false,"tool_choice":"auto","tools":[{"type":"function","function":{"name":"get_weather","description":"Get - weather for a city.","parameters":{"additionalProperties":false,"properties":{"city":{"description":"The - city name","type":"string"}},"required":["city"],"type":"object"},"strict":true}}]}' + body: '{"input":[{"role":"user","content":"What''s the weather in Paris?"},{"name":"get_weather","arguments":"{\"city\":\"Paris\"}","call_id":"call_M43Jw5SmrXyjyHnt8rgvDm02","type":"function_call"},{"type":"function_call_output","call_id":"call_M43Jw5SmrXyjyHnt8rgvDm02","output":"It''s + sunny in Paris"}],"max_output_tokens":200,"model":"gpt-4o-mini","stream":false,"tool_choice":"auto","tools":[{"name":"get_weather","parameters":{"additionalProperties":false,"properties":{"city":{"description":"The + city name","type":"string"}},"required":["city"],"type":"object"},"type":"function","description":"Get + weather for a city.","strict":true}]}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '697' - Content-Type: + content-length: + - '633' + content-type: - application/json - Cookie: - - __cf_bm=gukd03_5CQlzF8CcVQkyFHmHSq4X1bK8bDzIQ2kuzK8-1781551845.4081128-1.0.1.1-FfNOD3buMmOTGmei67A9MEuzvc7P_pXGMw5jDz.ZwZ_O5hMKW6D1A0GnXAcEhsb_SLW0G3LkolCl5m1gVxqIMQUxKGz17i0Jd4DjRLoHQx1Gq5_w54hVFe3U8BdPB0WA - Host: + cookie: + - __cf_bm=U9ACWtzA2wlDq3KnPwroZ7IYuEF1RZihApjcQTHSQoE-1782743350.0318854-1.0.1.1-cVNG1UY.By47Nffal0aiOufI4dlYHc646LBFES2kbih0slakM2onOOU8A3O3giQdQ3WvQF.BQkmMhE_MZcAQQGxNc5ABEpxL79G6JfX5HKx2UZb6CXZK8bKXEKw70efy + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7J82a5ZlH5ReyL1aDWYmVdc949T\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551846,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"The weather in Paris is sunny.\",\n - \ \"refusal\": null,\n \"annotations\": []\n },\n \"logprobs\": - null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": - 80,\n \"completion_tokens\": 8,\n \"total_tokens\": 88,\n \"prompt_tokens_details\": - {\n \"cached_tokens\": 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_b705fc1449\"\n}\n" + string: "{\n \"id\": \"resp_07b7e94a988a8def006a428136cc64819c832b41703ca14747\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743350,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743351,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 200,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_07b7e94a988a8def006a42813741cc819c8a6633dc54aabdfa\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"The weather in Paris + is sunny.\"\n }\n ],\n \"role\": \"assistant\"\n }\n ],\n + \ \"parallel_tool_calls\": true,\n \"presence_penalty\": 0.0,\n \"previous_response_id\": + null,\n \"prompt_cache_key\": null,\n \"prompt_cache_retention\": \"in_memory\",\n + \ \"reasoning\": {\n \"context\": null,\n \"effort\": null,\n \"summary\": + null\n },\n \"safety_identifier\": null,\n \"service_tier\": \"default\",\n + \ \"store\": true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": + {\n \"type\": \"text\"\n },\n \"verbosity\": \"medium\"\n },\n + \ \"tool_choice\": \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n + \ \"input_tokens\": 0,\n \"input_tokens_details\": {\n \"image_tokens\": + 0,\n \"text_tokens\": 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [\n {\n \"type\": \"function\",\n \"description\": + \"Get weather for a city.\",\n \"name\": \"get_weather\",\n \"parameters\": + {\n \"additionalProperties\": false,\n \"properties\": {\n \"city\": + {\n \"description\": \"The city name\",\n \"type\": + \"string\"\n }\n },\n \"required\": [\n \"city\"\n + \ ],\n \"type\": \"object\"\n },\n \"strict\": true\n + \ }\n ],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 72,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 9,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 81\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fdc05bebab8e-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:47 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f361c88de44-YYZ + connection: + - keep-alive content-length: - - '836' + - '2391' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:11 GMT openai-organization: - braintrust-data openai-processing-ms: - - '512' + - '681' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' - x-openai-proxy-wasm: - - v0.1 + server: + - cloudflare + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -208,13 +249,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999985' + - '149999710' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_710dfc99aaf14ba1937823dff5f568c8 + - 6f983d1e-d22c-4848-b522-23f0b1684769 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_auto_pydantic_ai.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_auto_pydantic_ai.yaml index 5e9582b6..8b0d093d 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_auto_pydantic_ai.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_auto_pydantic_ai.yaml @@ -2,44 +2,44 @@ interactions: - request: body: '{"messages":[{"role":"user","content":"Say hi"}],"model":"gpt-4o-mini","max_completion_tokens":100,"stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: + content-length: - '114' - Content-Type: + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST uri: https://api.openai.com/v1/chat/completions response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JgRiq76sXuWlzB1OQiNrrTQUgd\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551880,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n + string: "{\n \"id\": \"chatcmpl-Dw7HfUHWarOBDeFtijdTGMjvXUsyV\",\n \"object\": + \"chat.completion\",\n \"created\": 1782743395,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": \"assistant\",\n \"content\": \"Hi there! How can I assist you today?\",\n \ \"refusal\": null,\n \"annotations\": []\n },\n \"logprobs\": @@ -48,44 +48,46 @@ interactions: {\n \"cached_tokens\": 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_b705fc1449\"\n}\n" + \"default\",\n \"system_fingerprint\": \"fp_93ce1a0f2a\"\n}\n" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe90fc9bab82-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:20 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a04eeadfaa55-YYZ + connection: + - keep-alive content-length: - '843' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:56 GMT openai-organization: - braintrust-data openai-processing-ms: - - '542' + - '645' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=cI0Jc8st5sQgC2xRRi.YCnXjR2_cEPsvSsovvV0i40M-1781551879.841971-1.0.1.1-wz8l0WY41sKGprL01Hrxwsna.sQjsgDzzQhKEHit4PlHfALVf8IDIinho3csj6vNhzJoVYIltkFnz2z_3AqXbN.FQCPIeodH8gx6yvg0C_bsXJy33yHkBQHbW_iuSspn; + - __cf_bm=HQZw9tgix9h8gcLND.5RGUhhKNqwZNRo_IBSs1UYn3g-1782743395.6625075-1.0.1.1-QVr0fKuB7uM60Tjn0v99vnTKijEHWe9aTCyGlqapiFsDkMuO8xi.bYPx4KRabprKdxqKIgjtuQQeP.pUH7Vph3rcElA3cgFwaDaLxbbN88q2rqDs_aSlNUVN5_6lghZT; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:20 GMT + 29 Jun 2026 14:59:56 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-openai-proxy-wasm: - v0.1 x-ratelimit-limit-requests: @@ -95,13 +97,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999995' + - '149999997' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_db5e60cc7f8c495eb23f27d50534462f + - req_6340e29262c64995845ad864cba3e4a8 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request.yaml index 719e3fea..34ef754a 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request.yaml @@ -1,94 +1,110 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What is 2+2? Answer with just the - number."}],"model":"gpt-4o-mini","stream":false}' + body: '{"input":[{"role":"user","content":"What is 2+2? Answer with just the number."}],"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '121' - Content-Type: + content-length: + - '118' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7J9uH9zDM6mTTKqO2PovnAIHYbU\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551847,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"4\",\n \"refusal\": null,\n - \ \"annotations\": []\n },\n \"logprobs\": null,\n \"finish_reason\": - \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 20,\n \"completion_tokens\": - 1,\n \"total_tokens\": 21,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_d07f82f293\"\n}\n" + string: "{\n \"id\": \"resp_018fcd8c9fa59021006a4281379fb4819c8d701e4af41e4407\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743351,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743352,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": null,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_018fcd8c9fa59021006a42813825b8819c880e2ad565001057\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"4\"\n }\n ],\n + \ \"role\": \"assistant\"\n }\n ],\n \"parallel_tool_calls\": true,\n + \ \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 20,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 2,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 22\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fdc4df19e930-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:47 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f3b4b63aadc-YYZ + connection: + - keep-alive content-length: - - '807' + - '1939' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:12 GMT openai-organization: - braintrust-data openai-processing-ms: - - '349' + - '695' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=I2EQEteBspEoGGEq3Q_4NjITZ5jkYlqFD6n5ty1NySg-1781551847.1744463-1.0.1.1-ZudxQoLYsDisKr9x5FNkF_nOT4u577.TIUoXsyZkseFQu2N6r_FJeCUjohMskBeSWWrpSkfYSeJtGOyZLh4WZDGWwCFwgBtMSbmCGjZTwwF786hq430gUNQeeKlNdxHG; + - __cf_bm=NhwQ8Jm3Amnu3BtaxJhyRmg_V6mgs3H2_ZcVSzLldvk-1782743351.5618513-1.0.1.1-lnhF0Couir43y1EfBchUZR51u2Shay1XZ.e7nUwb1GJ.U2DX1BGBiL5prNfZ_8ki2IUCy2GaGOQU.NgfJP3oMXdNcrBSGs8Xj_S_.gvYDmcoljLuGQrBdtt3A.U.hSN.; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:47 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:12 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -96,13 +112,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999987' + - '149999962' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_f031ea5db16f49688ca3d2a7c0a60812 + - 68a06f43-7c14-46e1-8de6-21694d770147 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_creates_nested_chat_span_without_class_scan.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_creates_nested_chat_span_without_class_scan.yaml index d683e506..aea4347c 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_creates_nested_chat_span_without_class_scan.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_creates_nested_chat_span_without_class_scan.yaml @@ -1,94 +1,110 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What is 2+2? Answer with just the - number."}],"model":"gpt-4o-mini","stream":false}' + body: '{"input":[{"role":"user","content":"What is 2+2? Answer with just the number."}],"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '121' - Content-Type: + content-length: + - '118' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7Iwwtt2IaAWQVvBKIpuwOPj4dwi\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551834,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"4\",\n \"refusal\": null,\n - \ \"annotations\": []\n },\n \"logprobs\": null,\n \"finish_reason\": - \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 20,\n \"completion_tokens\": - 1,\n \"total_tokens\": 21,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_d07f82f293\"\n}\n" + string: "{\n \"id\": \"resp_02e8e7b08ac66584006a42812b3ef481a28db23efa159dc803\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743339,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743341,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": null,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_02e8e7b08ac66584006a42812d3e5881a2b11e1014fdbcb45f\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"4\"\n }\n ],\n + \ \"role\": \"assistant\"\n }\n ],\n \"parallel_tool_calls\": true,\n + \ \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 20,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 2,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 22\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fd736e56a392-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:34 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359eedfc8997b9-YYZ + connection: + - keep-alive content-length: - - '807' + - '1939' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:01 GMT openai-organization: - braintrust-data openai-processing-ms: - - '349' + - '2168' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=JwtW0ZUhOqdPoGeMc.yjwBBrmgCWanvYa4V_vPB2ihM-1781551834.1435916-1.0.1.1-vnYmAo9a2.q.3Wg3Yy6IrJbAhCy2AbRncxc5DXtQKH5Va11PiLMYaae0sNzPnPJEFgTf_5Z0IpIFyHT7pUzRgt3ZH3kXdbeJ5a8EFlziePFAtdEE0RHLYn7kk1nTeEgH; + - __cf_bm=_cb1oFuque3ukmrAYzoll5h3HXOqscFz45cCkmizEEg-1782743339.1978369-1.0.1.1-.uF40qruQB2orci1iKKd3rJb6zberaz3YXt6tG9uN0AxZO.OHJcYYdSgIsZ8GGdtUhq1MJVEGAMBPv.9AXyPza1uHbqHNeR56WqPJ_GMFlyljoUJdBeO95lt7dekmd1W; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:34 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:01 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -96,13 +112,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999987' + - '149999962' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_6b0542c6359648cda471dba9d02adfd8 + - 8b4e603b-a54e-4184-b6bf-6f4e0edc2abc status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_stream.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_stream.yaml index 110668fc..526483d7 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_stream.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_stream.yaml @@ -1,136 +1,167 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Count from 1 to 3"}],"model":"gpt-4o-mini","stream":true,"stream_options":{"include_usage":true}}' + body: '{"input":[{"role":"user","content":"Count from 1 to 3"}],"model":"gpt-4o-mini","stream":true}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '136' - Content-Type: + content-length: + - '93' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7JB084pFXu4uM3uVNkhGVEDqA3Y","object":"chat.completion.chunk","created":1781551849,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"bn0T6tnDN"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_0ab3889f8602a6d4006a42813a201081a1b28a4be7a499a081","object":"response","created_at":1782743354,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_0ab3889f8602a6d4006a42813a201081a1b28a4be7a499a081","object":"response","created_at":1782743354,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_0ab3889f8602a6d4006a42813c8e2c81a1b28c1b8fd8b33c6d","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_0ab3889f8602a6d4006a42813c8e2c81a1b28c1b8fd8b33c6d","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"1","item_id":"msg_0ab3889f8602a6d4006a42813c8e2c81a1b28c1b8fd8b33c6d","logprobs":[],"obfuscation":"StPSWWS96dL9IvR","output_index":0,"sequence_number":4} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_0ab3889f8602a6d4006a42813c8e2c81a1b28c1b8fd8b33c6d","logprobs":[],"obfuscation":"63KoahM3rh6QOjZ","output_index":0,"sequence_number":5} + + + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_0ab3889f8602a6d4006a42813c8e2c81a1b28c1b8fd8b33c6d","logprobs":[],"obfuscation":"NugmFGXvoIOz0Tm","output_index":0,"sequence_number":6} - data: {"id":"chatcmpl-Dr7JB084pFXu4uM3uVNkhGVEDqA3Y","object":"chat.completion.chunk","created":1781551849,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"KVr7DqV9aE"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JB084pFXu4uM3uVNkhGVEDqA3Y","object":"chat.completion.chunk","created":1781551849,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"q35bTepLqR"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"2","item_id":"msg_0ab3889f8602a6d4006a42813c8e2c81a1b28c1b8fd8b33c6d","logprobs":[],"obfuscation":"i1SdnGQGgP7psOC","output_index":0,"sequence_number":7} - data: {"id":"chatcmpl-Dr7JB084pFXu4uM3uVNkhGVEDqA3Y","object":"chat.completion.chunk","created":1781551849,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"aFGd4DCPjw"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_0ab3889f8602a6d4006a42813c8e2c81a1b28c1b8fd8b33c6d","logprobs":[],"obfuscation":"ZkhgaEjZotOtbGt","output_index":0,"sequence_number":8} - data: {"id":"chatcmpl-Dr7JB084pFXu4uM3uVNkhGVEDqA3Y","object":"chat.completion.chunk","created":1781551849,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"tdsFUYnplX"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JB084pFXu4uM3uVNkhGVEDqA3Y","object":"chat.completion.chunk","created":1781551849,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"BA7PXNHb6D"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_0ab3889f8602a6d4006a42813c8e2c81a1b28c1b8fd8b33c6d","logprobs":[],"obfuscation":"3GCbfmlGxY7QyjJ","output_index":0,"sequence_number":9} - data: {"id":"chatcmpl-Dr7JB084pFXu4uM3uVNkhGVEDqA3Y","object":"chat.completion.chunk","created":1781551849,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"DuwmrpUH6z"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"3","item_id":"msg_0ab3889f8602a6d4006a42813c8e2c81a1b28c1b8fd8b33c6d","logprobs":[],"obfuscation":"tC6jaVg1MblZCfO","output_index":0,"sequence_number":10} - data: {"id":"chatcmpl-Dr7JB084pFXu4uM3uVNkhGVEDqA3Y","object":"chat.completion.chunk","created":1781551849,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"Ojmkx7IdW3"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JB084pFXu4uM3uVNkhGVEDqA3Y","object":"chat.completion.chunk","created":1781551849,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"7AT04JOKkd"} + data: {"type":"response.output_text.delta","content_index":0,"delta":".","item_id":"msg_0ab3889f8602a6d4006a42813c8e2c81a1b28c1b8fd8b33c6d","logprobs":[],"obfuscation":"Bfh9mWxuxN9UHHF","output_index":0,"sequence_number":11} - data: {"id":"chatcmpl-Dr7JB084pFXu4uM3uVNkhGVEDqA3Y","object":"chat.completion.chunk","created":1781551849,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"vC6zr"} + event: response.output_text.done + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_0ab3889f8602a6d4006a42813c8e2c81a1b28c1b8fd8b33c6d","logprobs":[],"output_index":0,"sequence_number":12,"text":"1, + 2, 3."} - data: {"id":"chatcmpl-Dr7JB084pFXu4uM3uVNkhGVEDqA3Y","object":"chat.completion.chunk","created":1781551849,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[],"usage":{"prompt_tokens":14,"completion_tokens":8,"total_tokens":22,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"cQflSN7u0Ht"} + event: response.content_part.done - data: [DONE] + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_0ab3889f8602a6d4006a42813c8e2c81a1b28c1b8fd8b33c6d","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."},"sequence_number":13} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_0ab3889f8602a6d4006a42813c8e2c81a1b28c1b8fd8b33c6d","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"},"output_index":0,"sequence_number":14} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_0ab3889f8602a6d4006a42813a201081a1b28a4be7a499a081","object":"response","created_at":1782743354,"status":"completed","background":false,"completed_at":1782743356,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_0ab3889f8602a6d4006a42813c8e2c81a1b28c1b8fd8b33c6d","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":14,"input_tokens_details":{"cached_tokens":0},"output_tokens":9,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":23},"user":null,"metadata":{}},"sequence_number":15} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fdd20d15aaa8-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:30:49 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f4aea5d880c-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:14 GMT openai-organization: - braintrust-data openai-processing-ms: - - '338' + - '239' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=1LkRN7WVcKW4NuW2J8N4CGfgl8DAUEgcE1YjqMVOvL8-1781551849.2863843-1.0.1.1-jOWj6aN9We8phv9reO9DDceECJ.YnsftGHX62igwcL4FZK7uCGqr.O7Kd9s2i_2Sj2pBBUmpGV8_40X47ple.5RGdKWFkpOnl3ybRmZN4nRNXWy1ADRBbZ2CkFRlqSTo; + - __cf_bm=ozhkesUFibMqiFQTBSG13NY4MUsI4qisJPaOnu0dTVc-1782743354.0640965-1.0.1.1-eGG_28bu66BOGUt3qpGbebaZn9_bvhI7lrs43HCvapx0IB.UZlCBd2nO9d7jLz9KP_RQ4mV.5Jw8VkPRHUXbX8xfEgcm52xaw9pW8dnCw.dKHI.slezGv0aKHHHQajCK; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:49 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999992' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:14 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_50bde5fcb76c4d1b81be9873c3af1343 + - e5220211-06a3-4678-b79f-3ca0655bd361 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_stream_complete_output.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_stream_complete_output.yaml index 80baca42..a7610aae 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_stream_complete_output.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_stream_complete_output.yaml @@ -1,133 +1,162 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Say exactly: 1, 2, 3"}],"model":"gpt-4o-mini","stream":true,"stream_options":{"include_usage":true}}' + body: '{"input":[{"role":"user","content":"Say exactly: 1, 2, 3"}],"model":"gpt-4o-mini","stream":true}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '139' - Content-Type: + content-length: + - '96' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7JCvgJtwctiOHnEEbFwxgbZArsW","object":"chat.completion.chunk","created":1781551850,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_5a76486b9e","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"vDzB8AoFW"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_005b9704cff0f7c1006a42813d22e8819da97de50d29acdf86","object":"response","created_at":1782743357,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_005b9704cff0f7c1006a42813d22e8819da97de50d29acdf86","object":"response","created_at":1782743357,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_005b9704cff0f7c1006a42813d9a0c819db7e551d111b30d6f","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_005b9704cff0f7c1006a42813d9a0c819db7e551d111b30d6f","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"1","item_id":"msg_005b9704cff0f7c1006a42813d9a0c819db7e551d111b30d6f","logprobs":[],"obfuscation":"XPAKdHqpu6ARR2W","output_index":0,"sequence_number":4} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_005b9704cff0f7c1006a42813d9a0c819db7e551d111b30d6f","logprobs":[],"obfuscation":"IX812ryQMantAV2","output_index":0,"sequence_number":5} + + + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_005b9704cff0f7c1006a42813d9a0c819db7e551d111b30d6f","logprobs":[],"obfuscation":"A949Ne1CxhmNb6C","output_index":0,"sequence_number":6} - data: {"id":"chatcmpl-Dr7JCvgJtwctiOHnEEbFwxgbZArsW","object":"chat.completion.chunk","created":1781551850,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_5a76486b9e","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"ucs1zLfEjU"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JCvgJtwctiOHnEEbFwxgbZArsW","object":"chat.completion.chunk","created":1781551850,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_5a76486b9e","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"vatzNW1ZMw"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"2","item_id":"msg_005b9704cff0f7c1006a42813d9a0c819db7e551d111b30d6f","logprobs":[],"obfuscation":"VKWQpBqtlbnONDb","output_index":0,"sequence_number":7} - data: {"id":"chatcmpl-Dr7JCvgJtwctiOHnEEbFwxgbZArsW","object":"chat.completion.chunk","created":1781551850,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_5a76486b9e","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"nQPujeM8ij"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_005b9704cff0f7c1006a42813d9a0c819db7e551d111b30d6f","logprobs":[],"obfuscation":"FAfpvNu8Wh9Pts4","output_index":0,"sequence_number":8} - data: {"id":"chatcmpl-Dr7JCvgJtwctiOHnEEbFwxgbZArsW","object":"chat.completion.chunk","created":1781551850,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_5a76486b9e","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"pTcS1VS30S"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JCvgJtwctiOHnEEbFwxgbZArsW","object":"chat.completion.chunk","created":1781551850,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_5a76486b9e","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"MvihsSLByK"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_005b9704cff0f7c1006a42813d9a0c819db7e551d111b30d6f","logprobs":[],"obfuscation":"5booo02ntBV8fPf","output_index":0,"sequence_number":9} - data: {"id":"chatcmpl-Dr7JCvgJtwctiOHnEEbFwxgbZArsW","object":"chat.completion.chunk","created":1781551850,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_5a76486b9e","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"xqiRnwfALi"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"3","item_id":"msg_005b9704cff0f7c1006a42813d9a0c819db7e551d111b30d6f","logprobs":[],"obfuscation":"7zG5XdlVGbafWNQ","output_index":0,"sequence_number":10} - data: {"id":"chatcmpl-Dr7JCvgJtwctiOHnEEbFwxgbZArsW","object":"chat.completion.chunk","created":1781551850,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_5a76486b9e","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"4XkLf2SaL6"} + event: response.output_text.done - data: {"id":"chatcmpl-Dr7JCvgJtwctiOHnEEbFwxgbZArsW","object":"chat.completion.chunk","created":1781551850,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_5a76486b9e","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"EXqsE"} + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_005b9704cff0f7c1006a42813d9a0c819db7e551d111b30d6f","logprobs":[],"output_index":0,"sequence_number":11,"text":"1, + 2, 3"} - data: {"id":"chatcmpl-Dr7JCvgJtwctiOHnEEbFwxgbZArsW","object":"chat.completion.chunk","created":1781551850,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_5a76486b9e","choices":[],"usage":{"prompt_tokens":18,"completion_tokens":7,"total_tokens":25,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"3yIqMRB0lJZ"} + event: response.content_part.done + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_005b9704cff0f7c1006a42813d9a0c819db7e551d111b30d6f","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3"},"sequence_number":12} - data: [DONE] + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_005b9704cff0f7c1006a42813d9a0c819db7e551d111b30d6f","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3"}],"role":"assistant"},"output_index":0,"sequence_number":13} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_005b9704cff0f7c1006a42813d22e8819da97de50d29acdf86","object":"response","created_at":1782743357,"status":"completed","background":false,"completed_at":1782743358,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_005b9704cff0f7c1006a42813d9a0c819db7e551d111b30d6f","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3"}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":18,"input_tokens_details":{"cached_tokens":0},"output_tokens":8,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":26},"user":null,"metadata":{}},"sequence_number":14} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fdd5ef15ab60-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:30:50 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f5daaa2ac63-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:17 GMT openai-organization: - braintrust-data openai-processing-ms: - - '283' + - '165' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=RjrcENlCeB8m5R9iAum57nnLM5avLf1I4_wcKP9JQ_U-1781551849.910037-1.0.1.1-EAo9SPB5knzyrP.298Mq0fQhapxfchLNDwPcCvLKJ__JZ2u1TPdlrzRnOAHAgn30UOtZl2cpmKKIj1SZ0vfzAEY05XbMBcxDebM0NzfM_l4Rrcfrz8YVrPtVYAwBraZI; + - __cf_bm=HrKlrnpC2nTnelYG84SyOxoSqyQ00HnVlzET6gzeNXg-1782743357.0707135-1.0.1.1-vp74ui0R.7U.MX1i91UC1N628tg5TTv_mn5dla8MHUwfz9NDJxzRIrWkc2OK92_3.a0GGz6WqOk.vmLAf6Z4hVRUwyXh9hE0JPXPNr.maPp3xKGDgide9y7_1nzvE3WQ; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:50 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999992' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:17 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_97f6be56389c4b24817f45309119a117 + - 26741c4d-0628-4b1a-ade0-16753ed89d63 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_stream_sync.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_stream_sync.yaml index 71985312..55840247 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_stream_sync.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_stream_sync.yaml @@ -1,136 +1,456 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Count from 1 to 3"}],"model":"gpt-4o-mini","stream":true,"stream_options":{"include_usage":true}}' + body: null headers: Accept: - - application/json + - '*/*' Accept-Encoding: - - gzip, deflate + - gzip, deflate, zstd Connection: - keep-alive Content-Length: - - '136' + - '0' + User-Agent: + - python-requests/2.34.2 + method: POST + uri: https://www.braintrust.dev/api/apikey/login + response: + body: + string: '{"org_info":[{"id":"f5883013-b5c1-438d-9044-5182b4682337","name":"abhi-test-org","api_url":"https://api.braintrust.dev","git_metadata":{"collect":"some","fields":["commit","branch","tag","dirty","author_name","author_email","commit_message","commit_time"]},"is_universal_api":null,"proxy_url":"https://api.braintrust.dev","realtime_url":"wss://realtime.braintrustapi.com"}]}' + headers: + Access-Control-Allow-Credentials: + - 'true' + Access-Control-Allow-Headers: + - X-CSRF-Token, X-Requested-With, Accept, Accept-Version, Content-Length, Content-MD5, + Content-Type, Date, X-Api-Version + Access-Control-Allow-Methods: + - GET,OPTIONS,PATCH,DELETE,POST,PUT + Access-Control-Allow-Origin: + - '*' + Cache-Control: + - public, max-age=0, must-revalidate + Content-Length: + - '374' + Content-Security-Policy: + - 'script-src ''self'' ''unsafe-eval'' ''wasm-unsafe-eval'' ''strict-dynamic'' + ''nonce-YTkzNmNhOGEtOWY2Yi00NmRmLTg2MzktNjFiYTgwOWMwZTkw'' *.js.stripe.com + js.stripe.com maps.googleapis.com ; style-src ''self'' ''unsafe-inline'' *.braintrust.dev + btcm6qilbbhv4yi1.public.blob.vercel-storage.com fonts.googleapis.com www.gstatic.com + d4tuoctqmanu0.cloudfront.net; font-src ''self'' data: fonts.gstatic.com btcm6qilbbhv4yi1.public.blob.vercel-storage.com + cdn.jsdelivr.net d4tuoctqmanu0.cloudfront.net fonts.googleapis.com mintlify-assets.b-cdn.net + fonts.cdnfonts.com; object-src ''none''; base-uri ''self''; form-action ''self'' + https://www.facebook.com; frame-ancestors ''self''; worker-src ''self'' blob:; + report-uri https://o4507221741076480.ingest.us.sentry.io/api/4507221754380288/security/?sentry_key=27fa5ac907cf7c6ce4a1ab2a03f805b4&sentry_environment=production&sentry_release=16; + report-to csp-endpoint-0' + Content-Type: + - application/json; charset=utf-8 + Date: + - Mon, 29 Jun 2026 14:29:33 GMT + Etag: + - '"13kwty4qcjgae"' + Reporting-Endpoints: + - csp-endpoint-0="https://o4507221741076480.ingest.us.sentry.io/api/4507221754380288/security/?sentry_key=27fa5ac907cf7c6ce4a1ab2a03f805b4&sentry_environment=production&sentry_release=16" + Server: + - Vercel + Strict-Transport-Security: + - max-age=63072000 + X-Bt-Was-Udf-Cached: + - 'true' + X-Clerk-Auth-Message: + - Invalid JWT form. A JWT consists of three parts separated by dots. (reason=token-invalid, + token-carrier=header) + X-Clerk-Auth-Reason: + - token-invalid + X-Clerk-Auth-Status: + - signed-out + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - SAMEORIGIN + X-Matched-Path: + - /api/apikey/login + X-Nonce: + - YTkzNmNhOGEtOWY2Yi00NmRmLTg2MzktNjFiYTgwOWMwZTkw + X-Vercel-Cache: + - MISS + X-Vercel-Id: + - yul1::iad1::ww6kd-1782743372936-a0afb631b9eb + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate, zstd + Connection: + - keep-alive + User-Agent: + - python-requests/2.34.2 + method: GET + uri: https://api.braintrust.dev/version + response: + body: + string: '{"version":"2.5.0","date_version":"20260627","ff_version":38,"commit":"51a0fee64f5b236e8247f06022929bdcd84739a6","deployment_mode":"lambda","deployment_type":"custom","brainstore_default":"force","brainstore_can_contain_row_refs":true,"skip_pg_config":"all","has_realtime_wal_bucket":true,"brainstore_wal_footer_version":"v3","brainstore_wal_use_efficient_format":true,"has_logs2":true,"brainstore_export_enabled":true,"js":true,"universal":true,"code_execution":true,"logs3_payload_max_bytes":5242880,"control_plane_telemetry":["status","memprof","usage"]}' + headers: + Connection: + - keep-alive + Content-Type: + - application/json; charset=utf-8 + Date: + - Mon, 29 Jun 2026 14:29:33 GMT + Via: + - 1.1 9d4b926b2502a3881ced93ebb5a88e28.cloudfront.net (CloudFront), 1.1 478964c1fb41e19f7234627b9a8773fc.cloudfront.net + (CloudFront) + X-Amz-Cf-Id: + - s4Br79NS9CRKAHXfGDhq6S5SKWRH9DsG4HFQ0Ew3RMixlTZXvPeQjA== + X-Amz-Cf-Pop: + - IAD61-P9 + - IAD89-P4 + X-Amzn-Trace-Id: + - Root=1-6a42814d-16da5c5500781f4f2ead337f;Parent=0be586cc58567f1e;Sampled=0;Lineage=1:24be3d11:0 + X-Cache: + - Miss from cloudfront + access-control-allow-credentials: + - 'true' + access-control-expose-headers: + - x-bt-cursor,x-bt-found-existing,x-bt-query-plan,x-bt-api-duration-ms,x-bt-brainstore-duration-ms,x-bt-internal-trace-id,x-bt-error-origin,x-bt-used-endpoint + cache-control: + - no-store, no-cache, must-revalidate, proxy-revalidate + content-length: + - '557' + etag: + - W/"22d-HaoUMNkyMA0WqODRMHghtYTxHTE" + expires: + - '0' + surrogate-control: + - no-store + vary: + - Origin + x-amz-apigw-id: + - fukkHG2IoAMEe7w= + x-amzn-Remapped-content-length: + - '557' + x-amzn-RequestId: + - 3d2c5296-239a-4e3a-ac53-cf85d99b2c98 + x-bt-internal-trace-id: + - 6a42814d0000000079ab713f53660eeb + status: + code: 200 + message: OK +- request: + body: '{"rows": [{"_is_merge": false, "context": {"caller_filename": "/Users/abhijeetprasad/.superset/worktrees/698022ff-26ce-4bd5-ac6d-5978cac9c633/pydantic-2.0-support/py/.nox/test_pydantic_ai_integration-latest/lib/python3.14/site-packages/pydantic_ai/direct.py", + "caller_functionname": "_consume_async_stream", "caller_lineno": 384}, "created": + "2026-06-29T14:29:32.801854+00:00", "id": "a087ea37-935d-4c3b-8f37-816ac8287e52", + "input": {"instrument": null, "messages": [{"kind": "request", "parts": [{"content": + "Count from 1 to 3", "part_kind": "user-prompt"}], "state": "complete", "timestamp": + null}], "model": "openai:gpt-4o-mini", "model_request_parameters": null, "model_settings": + null}, "log_id": "g", "metadata": {"model": "gpt-4o-mini", "provider": "openai"}, + "metrics": {"start": 1782743372.801853}, "project_id": "test-pydantic-ai-integration", + "root_span_id": "c7573ff017ba20b79156e2d4c30377ac", "span_attributes": {"exec_counter": + 62, "name": "model_request_stream", "type": "task"}, "span_id": "85d2045453d36d8b", + "span_parents": ["71764a5e557d248e"]}], "api_version": 2}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate, zstd + Connection: + - keep-alive + Content-Length: + - '1083' + User-Agent: + - python-requests/2.34.2 + method: POST + uri: https://api.braintrust.dev/logs3 + response: + body: + string: '{"Code":"ForbiddenError","Message":"Missing read access to project_log + id test-pydantic-ai-integration, or the project_log does not exist [user_email=abhijeet@braintrustdata.com] + [user_org=abhi-test-org] [timestamp=1782743373.484]","InternalTraceId":"6a42814d000000001324cc539c6df884","Path":"/logs3","Service":"api"}' + headers: + Connection: + - keep-alive + Content-Type: + - application/json; charset=utf-8 + Date: + - Mon, 29 Jun 2026 14:29:33 GMT + Via: + - 1.1 fb5457d63c2bae82c659669b952f7d52.cloudfront.net (CloudFront), 1.1 f856d6edb2082e212ebf7f252cb484d6.cloudfront.net + (CloudFront) + X-Amz-Cf-Id: + - RXj1YyBa91us2RSd5Z2LBOEk-MvP9LNZxnUioUVeX5TsH10RyJVe7Q== + X-Amz-Cf-Pop: + - IAD61-P9 + - IAD89-P4 + X-Amzn-Trace-Id: + - Root=1-6a42814d-7dc1dd5a2360c61d1b6bf51f;Parent=3181e404f00aa5c6;Sampled=0;Lineage=1:24be3d11:0 + X-Cache: + - Error from cloudfront + access-control-allow-credentials: + - 'true' + access-control-expose-headers: + - x-bt-cursor,x-bt-found-existing,x-bt-query-plan,x-bt-api-duration-ms,x-bt-brainstore-duration-ms,x-bt-internal-trace-id,x-bt-error-origin,x-bt-used-endpoint + cache-control: + - no-store, no-cache, must-revalidate, proxy-revalidate + content-length: + - '317' + etag: + - W/"13d-F7zIcAz4ySMJqiIbl+MXbPkJTag" + expires: + - '0' + surrogate-control: + - no-store + vary: + - Origin, Accept-Encoding + x-amz-apigw-id: + - fukkJGm-IAMEfdw= + x-amzn-RequestId: + - a10f519b-1233-4d0b-a550-c34ac6c8db21 + x-bt-internal-trace-id: + - 6a42814d000000001324cc539c6df884 + status: + code: 403 + message: Forbidden +- request: + body: '{"rows": [{"_is_merge": false, "context": {"caller_filename": "/Users/abhijeetprasad/.superset/worktrees/698022ff-26ce-4bd5-ac6d-5978cac9c633/pydantic-2.0-support/py/.nox/test_pydantic_ai_integration-latest/lib/python3.14/site-packages/pydantic_ai/direct.py", + "caller_functionname": "_consume_async_stream", "caller_lineno": 384}, "created": + "2026-06-29T14:29:32.801854+00:00", "id": "a087ea37-935d-4c3b-8f37-816ac8287e52", + "input": {"instrument": null, "messages": [{"kind": "request", "parts": [{"content": + "Count from 1 to 3", "part_kind": "user-prompt"}], "state": "complete", "timestamp": + null}], "model": "openai:gpt-4o-mini", "model_request_parameters": null, "model_settings": + null}, "log_id": "g", "metadata": {"model": "gpt-4o-mini", "provider": "openai"}, + "metrics": {"start": 1782743372.801853}, "project_id": "test-pydantic-ai-integration", + "root_span_id": "c7573ff017ba20b79156e2d4c30377ac", "span_attributes": {"exec_counter": + 62, "name": "model_request_stream", "type": "task"}, "span_id": "85d2045453d36d8b", + "span_parents": ["71764a5e557d248e"]}], "api_version": 2}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate, zstd + Connection: + - keep-alive + Content-Length: + - '1083' + User-Agent: + - python-requests/2.34.2 + method: POST + uri: https://api.braintrust.dev/logs3 + response: + body: + string: '{"Code":"ForbiddenError","Message":"Missing read access to project_log + id test-pydantic-ai-integration, or the project_log does not exist [user_email=abhijeet@braintrustdata.com] + [user_org=abhi-test-org] [timestamp=1782743374.716]","InternalTraceId":"6a42814e000000003bad3aaac8afdf7f","Path":"/logs3","Service":"api"}' + headers: + Connection: + - keep-alive Content-Type: + - application/json; charset=utf-8 + Date: + - Mon, 29 Jun 2026 14:29:34 GMT + Via: + - 1.1 9d4b926b2502a3881ced93ebb5a88e28.cloudfront.net (CloudFront), 1.1 d725c4faa041aff90d290d13b8e0701a.cloudfront.net + (CloudFront) + X-Amz-Cf-Id: + - QeZlS_rawNupOQo8ERr5jOrWEgCwGYPnyuGCsCdLQF31vOIR8LdZYA== + X-Amz-Cf-Pop: + - IAD61-P9 + - IAD89-P4 + X-Amzn-Trace-Id: + - Root=1-6a42814e-421a783619c1413565d75044;Parent=49625bcf4a25f6e4;Sampled=0;Lineage=1:24be3d11:0 + X-Cache: + - Error from cloudfront + access-control-allow-credentials: + - 'true' + access-control-expose-headers: + - x-bt-cursor,x-bt-found-existing,x-bt-query-plan,x-bt-api-duration-ms,x-bt-brainstore-duration-ms,x-bt-internal-trace-id,x-bt-error-origin,x-bt-used-endpoint + cache-control: + - no-store, no-cache, must-revalidate, proxy-revalidate + content-length: + - '317' + etag: + - W/"13d-dmIfkEgz38SINwxfgBaFAHAQr5s" + expires: + - '0' + surrogate-control: + - no-store + vary: + - Origin, Accept-Encoding + x-amz-apigw-id: + - fukkWEl7IAMEQQw= + x-amzn-RequestId: + - fa7b1afa-7d97-4526-9226-b23fec921bf4 + x-bt-internal-trace-id: + - 6a42814e000000003bad3aaac8afdf7f + status: + code: 403 + message: Forbidden +- request: + body: '{"input":[{"role":"user","content":"Count from 1 to 3"}],"model":"gpt-4o-mini","stream":true}' + headers: + accept: + - application/json + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '93' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7JMIjswv1mmDIUjaagJVUHwXj4h","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"US7Yl7PHV"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_026fc4490667e772006a42814d00fc81a2b1261a1008ca1159","object":"response","created_at":1782743373,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_026fc4490667e772006a42814d00fc81a2b1261a1008ca1159","object":"response","created_at":1782743373,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_026fc4490667e772006a42814e136c81a284308bc02fc5c7dd","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_026fc4490667e772006a42814e136c81a284308bc02fc5c7dd","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"1","item_id":"msg_026fc4490667e772006a42814e136c81a284308bc02fc5c7dd","logprobs":[],"obfuscation":"IWA1q6YDG76ZQX1","output_index":0,"sequence_number":4} + + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JMIjswv1mmDIUjaagJVUHwXj4h","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"igyCSBRkTq"} + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_026fc4490667e772006a42814e136c81a284308bc02fc5c7dd","logprobs":[],"obfuscation":"A19NBqazoDu4yOL","output_index":0,"sequence_number":5} - data: {"id":"chatcmpl-Dr7JMIjswv1mmDIUjaagJVUHwXj4h","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"HMr9bLIbzN"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_026fc4490667e772006a42814e136c81a284308bc02fc5c7dd","logprobs":[],"obfuscation":"kMutMebnF0r8dB0","output_index":0,"sequence_number":6} - data: {"id":"chatcmpl-Dr7JMIjswv1mmDIUjaagJVUHwXj4h","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"UHjNljkpM7"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JMIjswv1mmDIUjaagJVUHwXj4h","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"kn7Kent25f"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"2","item_id":"msg_026fc4490667e772006a42814e136c81a284308bc02fc5c7dd","logprobs":[],"obfuscation":"fXbMOsU67goCegh","output_index":0,"sequence_number":7} - data: {"id":"chatcmpl-Dr7JMIjswv1mmDIUjaagJVUHwXj4h","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"YPew0dcOln"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_026fc4490667e772006a42814e136c81a284308bc02fc5c7dd","logprobs":[],"obfuscation":"cQTzTPw7JYt0CzI","output_index":0,"sequence_number":8} - data: {"id":"chatcmpl-Dr7JMIjswv1mmDIUjaagJVUHwXj4h","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"EzgZRAEcFI"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JMIjswv1mmDIUjaagJVUHwXj4h","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"4lE9lkEDop"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_026fc4490667e772006a42814e136c81a284308bc02fc5c7dd","logprobs":[],"obfuscation":"pWL0iVXwD05ErFg","output_index":0,"sequence_number":9} - data: {"id":"chatcmpl-Dr7JMIjswv1mmDIUjaagJVUHwXj4h","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"jiELb5uMKR"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"3","item_id":"msg_026fc4490667e772006a42814e136c81a284308bc02fc5c7dd","logprobs":[],"obfuscation":"gcmkCbXIE1bNuPh","output_index":0,"sequence_number":10} - data: {"id":"chatcmpl-Dr7JMIjswv1mmDIUjaagJVUHwXj4h","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"vYUuH"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JMIjswv1mmDIUjaagJVUHwXj4h","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_a1aad5391f","choices":[],"usage":{"prompt_tokens":14,"completion_tokens":8,"total_tokens":22,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"cOGzWbkayb6"} + data: {"type":"response.output_text.delta","content_index":0,"delta":".","item_id":"msg_026fc4490667e772006a42814e136c81a284308bc02fc5c7dd","logprobs":[],"obfuscation":"ZBMWGcaCVjsRPNt","output_index":0,"sequence_number":11} - data: [DONE] + event: response.output_text.done + + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_026fc4490667e772006a42814e136c81a284308bc02fc5c7dd","logprobs":[],"output_index":0,"sequence_number":12,"text":"1, + 2, 3."} + + + event: response.content_part.done + + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_026fc4490667e772006a42814e136c81a284308bc02fc5c7dd","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."},"sequence_number":13} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_026fc4490667e772006a42814e136c81a284308bc02fc5c7dd","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"},"output_index":0,"sequence_number":14} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_026fc4490667e772006a42814d00fc81a2b1261a1008ca1159","object":"response","created_at":1782743373,"status":"completed","background":false,"completed_at":1782743374,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_026fc4490667e772006a42814e136c81a284308bc02fc5c7dd","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":14,"input_tokens_details":{"cached_tokens":0},"output_tokens":9,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":23},"user":null,"metadata":{}},"sequence_number":15} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe1448d5ae18-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:31:00 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359fc0ca6061e9-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:33 GMT openai-organization: - braintrust-data openai-processing-ms: - - '262' + - '213' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=SN9EnVlKlRpiUxufGzrjw0D_16zHRIZjrA4nRW8XFuc-1781551859.8890712-1.0.1.1-wy9n1Wea04F2.MKTPuPlIGo9lj73CYa29DZJ8sK4IWqBYvX14QiuVFW1SHlSfK6hhXiFM0IKkn9yzm9b5Ge7iCVsdSo1rpUnzdw5Ie9mcyoLxqVwS100hupQPwIQ571v; + - __cf_bm=QhOCBc7XYaBCJ5xcnnsntl9Xb_BVGcsUbRx_JvJ5AQM-1782743372.9276845-1.0.1.1-ft_HFu5tLfDzB6H1awSbHR0ZzQYkQ6FAOTxomZYcDROgSYHDGgxnq3cNJDVMyWPyYG2oq.ci8rGUPNLqQa0OMWLLm6PylaQfmbqHWc16jiO28jE2UTOhmEi4HvPsMbP3; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:00 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999992' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:33 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_f626be2512204383bea73af5f8732643 + - a3fb58e9-5270-4ef3-bd9c-32b81dac3e7b status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_sync.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_sync.yaml index 6f61c938..edde2bcd 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_sync.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_sync.yaml @@ -1,94 +1,110 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What is 2+2? Answer with just the - number."}],"model":"gpt-4o-mini","stream":false}' + body: '{"input":[{"role":"user","content":"What is 2+2? Answer with just the number."}],"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '121' - Content-Type: + content-length: + - '118' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7J9gylNgogFIEPpXovN4ssLzZkl\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551847,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"4\",\n \"refusal\": null,\n - \ \"annotations\": []\n },\n \"logprobs\": null,\n \"finish_reason\": - \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 20,\n \"completion_tokens\": - 1,\n \"total_tokens\": 21,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_d07f82f293\"\n}\n" + string: "{\n \"id\": \"resp_008df5c5dc4de8f8006a4281388450819e9f28f246dac72ec6\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743352,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743353,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": null,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_008df5c5dc4de8f8006a428138f848819eb5af107de928240d\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"4\"\n }\n ],\n + \ \"role\": \"assistant\"\n }\n ],\n \"parallel_tool_calls\": true,\n + \ \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 20,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 2,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 22\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fdc7fef8cbfd-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:48 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f40685e39f5-YYZ + connection: + - keep-alive content-length: - - '807' + - '1939' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:13 GMT openai-organization: - braintrust-data openai-processing-ms: - - '739' + - '673' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=6vlIP5VdFiNTJIk6YH5vdr2rpyHEDQdZ3_LhFVB5pjE-1781551847.678785-1.0.1.1-wDDCmQRS_xelPpRss8hhp9Gzv0WwG6C3wvWf2lgJy40cUQ_KsUswbCmi9hHBTLe_IWNy1yEDxUa2WlNDURrEiLqgwLZ2RQiwjFK2a18QDCPze4LVXkX9yRBwkhLUxeuu; + - __cf_bm=5sgeOfFWlOQsOUnbUO06tniX5C39WmaIUcG2zA2Yjsc-1782743352.3815947-1.0.1.1-ZguXYYpUEXUwpwY6ppZH8JNzS_JVJoRlLzEs6Qwp0MjDfs1EqSA1G4p6EhTnUHiCPSJYtP4iUR85zXHHvQYD9xfjb1sdZFtYIy8QXF3HJ74ywKo8syw_TKObgCVkcEnD; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:48 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:13 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -96,13 +112,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999987' + - '149999960' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_2339f0e2db8f423cadcc006ff34f8e9e + - 2a49ad25-26f3-451f-8330-30bce053eaf0 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_with_settings.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_with_settings.yaml index a793d460..4be2ccd8 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_with_settings.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_direct_model_request_with_settings.yaml @@ -1,93 +1,110 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Say hello"}],"model":"gpt-4o-mini","max_completion_tokens":50,"stream":false,"temperature":0.7}' + body: '{"input":[{"role":"user","content":"Say hello"}],"max_output_tokens":50,"model":"gpt-4o-mini","stream":false,"temperature":0.7}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '134' - Content-Type: + content-length: + - '127' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JAQCC0XVeoARE0wjANdZox77a3\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551848,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"Hello! How can I assist you today?\",\n - \ \"refusal\": null,\n \"annotations\": []\n },\n \"logprobs\": - null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": - 9,\n \"completion_tokens\": 9,\n \"total_tokens\": 18,\n \"prompt_tokens_details\": - {\n \"cached_tokens\": 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_dca9632699\"\n}\n" + string: "{\n \"id\": \"resp_033106064d88d6dc006a42813948c0819fab8d27ee90439c02\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743353,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743353,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 50,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_033106064d88d6dc006a428139c11c819f9c536be63401bb55\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"Hello! How can I assist + you today?\"\n }\n ],\n \"role\": \"assistant\"\n }\n + \ ],\n \"parallel_tool_calls\": true,\n \"presence_penalty\": 0.0,\n \"previous_response_id\": + null,\n \"prompt_cache_key\": null,\n \"prompt_cache_retention\": \"in_memory\",\n + \ \"reasoning\": {\n \"context\": null,\n \"effort\": null,\n \"summary\": + null\n },\n \"safety_identifier\": null,\n \"service_tier\": \"default\",\n + \ \"store\": true,\n \"temperature\": 0.7,\n \"text\": {\n \"format\": + {\n \"type\": \"text\"\n },\n \"verbosity\": \"medium\"\n },\n + \ \"tool_choice\": \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n + \ \"input_tokens\": 0,\n \"input_tokens_details\": {\n \"image_tokens\": + 0,\n \"text_tokens\": 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 9,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 10,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 19\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fdcdbc6aab36-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:49 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f45a917ab1b-YYZ + connection: + - keep-alive content-length: - - '839' + - '1970' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:13 GMT openai-organization: - braintrust-data openai-processing-ms: - - '477' + - '698' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=7h7d7Yy8l9GuXoNQDk8gipu7MkYZMcMQaM7K2JrilQY-1781551848.6005704-1.0.1.1-TepX4PS.bcUfzRHikTtuBOqplMgzVdwW2G2KfxQbJaAFQ2ELZ_uJSd1oFkzcnXZPDSeq820LWOglFtS5fmWtIfaEHXFUfcCkRnJKKLnCUXwO_KpOnJfiPzs2I.PrIH3f; + - __cf_bm=KMkehlgj92bt0DLQ3z1Sm4wcSoD6.fjh2KLcQxCZKQs-1782743353.2271032-1.0.1.1-PE4OIlwNIaLV9Gqm6lBYxxozXNsuKfn31bvPI6etDN0Urcltjd7Sd0_SqOY7QIbHY5xn54RAljeKMZ4whEPAS_7oMdOO.HlDbLu_w3f0h32KUV28DLbpXHLXFC8_mSBr; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:49 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:13 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -95,13 +112,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999995' + - '149999970' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_64141cb7c4864fa7bb505fdc2cdadba9 + - 5a5f5e27-c62e-4d2b-a2ee-0cd3ae8bf87c status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_model_class_span_names.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_model_class_span_names.yaml index 5120e8fe..790b1f25 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_model_class_span_names.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_model_class_span_names.yaml @@ -1,93 +1,110 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What is 2+2?"}],"model":"gpt-4o-mini","max_completion_tokens":50,"stream":false}' + body: '{"input":[{"role":"user","content":"What is 2+2?"}],"max_output_tokens":50,"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '119' - Content-Type: + content-length: + - '112' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JaUbZ1OouCV2JwcJ7TJUU7jIVE\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551874,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"2 + 2 equals 4.\",\n \"refusal\": - null,\n \"annotations\": []\n },\n \"logprobs\": null,\n - \ \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": - 14,\n \"completion_tokens\": 8,\n \"total_tokens\": 22,\n \"prompt_tokens_details\": - {\n \"cached_tokens\": 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_52f39eab6f\"\n}\n" + string: "{\n \"id\": \"resp_0894319644c1413d006a42815ecc74819c92880680ab0fab0f\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743390,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743391,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 50,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_0894319644c1413d006a42815f4450819c8b42a253f7a8fe26\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"2 + 2 equals 4.\"\n + \ }\n ],\n \"role\": \"assistant\"\n }\n ],\n \"parallel_tool_calls\": + true,\n \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 14,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 9,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 23\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe6c3a64ebb4-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:14 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a0303ede713b-YYZ + connection: + - keep-alive content-length: - - '821' + - '1951' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:51 GMT openai-organization: - braintrust-data openai-processing-ms: - - '453' + - '675' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=tDnxTI99DGXhHyHSBAonAqjG4_X3cHrsWXDhaBzvZcI-1781551873.9528906-1.0.1.1-s7eDg90xK_vFMheMMFztsqoJqhURZAWZN0NB9t4Sen2Qo2a7.N3s3aH_veWgko.RNjayxTQLdsyJiuPc1KCdpURAlXEs5A4ypZfKoLv2Z.vPuqZPF3ZEg4KtETiURf4t; + - __cf_bm=1e.ytCXMAxaBicNIsXpr8eDY53XBOY2PWHqCzTyBp9k-1782743390.75183-1.0.1.1-h1b8E9qYaBEFEDXKhWvKwx6B5n6mQG9zFNN7twuN1w2VIO0sPJ29rE5mkYJl_iJ48Mf5P_UPK2EaImd52AxDR4FHEFwQ3145ntD.Qv_Pb6u0A.iQzEHnut2X5ddr17r2; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:14 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:51 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -95,13 +112,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999995' + - '149999967' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_91de0b0c7022418b9f949bea398ad032 + - 2f853212-fbca-4695-8a0c-ec676898b06e status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_model_request_stream_sync_thread_context_propagation.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_model_request_stream_sync_thread_context_propagation.yaml index b95cbd1d..89f19435 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_model_request_stream_sync_thread_context_propagation.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_model_request_stream_sync_thread_context_propagation.yaml @@ -1,143 +1,481 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Hello"}],"model":"gpt-4o-mini","stream":true,"stream_options":{"include_usage":true}}' + body: null headers: Accept: - - application/json + - '*/*' Accept-Encoding: - - gzip, deflate + - gzip, deflate, zstd + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - python-requests/2.34.2 + method: POST + uri: https://www.braintrust.dev/api/apikey/login + response: + body: + string: '{"org_info":[{"id":"f5883013-b5c1-438d-9044-5182b4682337","name":"abhi-test-org","api_url":"https://api.braintrust.dev","git_metadata":{"collect":"some","fields":["commit","branch","tag","dirty","author_name","author_email","commit_message","commit_time"]},"is_universal_api":null,"proxy_url":"https://api.braintrust.dev","realtime_url":"wss://realtime.braintrustapi.com"}]}' + headers: + Access-Control-Allow-Credentials: + - 'true' + Access-Control-Allow-Headers: + - X-CSRF-Token, X-Requested-With, Accept, Accept-Version, Content-Length, Content-MD5, + Content-Type, Date, X-Api-Version + Access-Control-Allow-Methods: + - GET,OPTIONS,PATCH,DELETE,POST,PUT + Access-Control-Allow-Origin: + - '*' + Cache-Control: + - public, max-age=0, must-revalidate + Content-Length: + - '374' + Content-Security-Policy: + - 'script-src ''self'' ''unsafe-eval'' ''wasm-unsafe-eval'' ''strict-dynamic'' + ''nonce-YWQ2NjlhNjItYzIzNS00ZGMzLWIzOTYtZGFmZGJmZjFkYjE2'' *.js.stripe.com + js.stripe.com maps.googleapis.com ; style-src ''self'' ''unsafe-inline'' *.braintrust.dev + btcm6qilbbhv4yi1.public.blob.vercel-storage.com fonts.googleapis.com www.gstatic.com + d4tuoctqmanu0.cloudfront.net; font-src ''self'' data: fonts.gstatic.com btcm6qilbbhv4yi1.public.blob.vercel-storage.com + cdn.jsdelivr.net d4tuoctqmanu0.cloudfront.net fonts.googleapis.com mintlify-assets.b-cdn.net + fonts.cdnfonts.com; object-src ''none''; base-uri ''self''; form-action ''self'' + https://www.facebook.com; frame-ancestors ''self''; worker-src ''self'' blob:; + report-uri https://o4507221741076480.ingest.us.sentry.io/api/4507221754380288/security/?sentry_key=27fa5ac907cf7c6ce4a1ab2a03f805b4&sentry_environment=production&sentry_release=16; + report-to csp-endpoint-0' + Content-Type: + - application/json; charset=utf-8 + Date: + - Mon, 29 Jun 2026 14:29:57 GMT + Etag: + - '"13kwty4qcjgae"' + Reporting-Endpoints: + - csp-endpoint-0="https://o4507221741076480.ingest.us.sentry.io/api/4507221754380288/security/?sentry_key=27fa5ac907cf7c6ce4a1ab2a03f805b4&sentry_environment=production&sentry_release=16" + Server: + - Vercel + Strict-Transport-Security: + - max-age=63072000 + X-Bt-Was-Udf-Cached: + - 'true' + X-Clerk-Auth-Message: + - Invalid JWT form. A JWT consists of three parts separated by dots. (reason=token-invalid, + token-carrier=header) + X-Clerk-Auth-Reason: + - token-invalid + X-Clerk-Auth-Status: + - signed-out + X-Content-Type-Options: + - nosniff + X-Frame-Options: + - SAMEORIGIN + X-Matched-Path: + - /api/apikey/login + X-Nonce: + - YWQ2NjlhNjItYzIzNS00ZGMzLWIzOTYtZGFmZGJmZjFkYjE2 + X-Vercel-Cache: + - MISS + X-Vercel-Id: + - yul1::iad1::k27nq-1782743397208-0c3351f2f570 + status: + code: 200 + message: OK +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate, zstd + Connection: + - keep-alive + User-Agent: + - python-requests/2.34.2 + method: GET + uri: https://api.braintrust.dev/version + response: + body: + string: '{"version":"2.5.0","date_version":"20260627","ff_version":38,"commit":"51a0fee64f5b236e8247f06022929bdcd84739a6","deployment_mode":"lambda","deployment_type":"custom","brainstore_default":"force","brainstore_can_contain_row_refs":true,"skip_pg_config":"all","has_realtime_wal_bucket":true,"brainstore_wal_footer_version":"v3","brainstore_wal_use_efficient_format":true,"has_logs2":true,"brainstore_export_enabled":true,"js":true,"universal":true,"code_execution":true,"logs3_payload_max_bytes":5242880,"control_plane_telemetry":["status","memprof","usage"]}' + headers: + Connection: + - keep-alive + Content-Type: + - application/json; charset=utf-8 + Date: + - Mon, 29 Jun 2026 14:29:57 GMT + Via: + - 1.1 0a207be11cfd2d90fff9212d2a692a7e.cloudfront.net (CloudFront), 1.1 01767ca4222611269352c4c93a41c338.cloudfront.net + (CloudFront) + X-Amz-Cf-Id: + - 4Nj3QdJtREawah7rVVmJoaAP_8hntOj4-K_V1YSbrXBtrrzb7AJ74w== + X-Amz-Cf-Pop: + - IAD61-P9 + - IAD89-P4 + X-Amzn-Trace-Id: + - Root=1-6a428165-7e6b429f515a6eb67176beb9;Parent=5c560fd013f4ec56;Sampled=0;Lineage=1:24be3d11:0 + X-Cache: + - Miss from cloudfront + access-control-allow-credentials: + - 'true' + access-control-expose-headers: + - x-bt-cursor,x-bt-found-existing,x-bt-query-plan,x-bt-api-duration-ms,x-bt-brainstore-duration-ms,x-bt-internal-trace-id,x-bt-error-origin,x-bt-used-endpoint + cache-control: + - no-store, no-cache, must-revalidate, proxy-revalidate + content-length: + - '557' + etag: + - W/"22d-HaoUMNkyMA0WqODRMHghtYTxHTE" + expires: + - '0' + surrogate-control: + - no-store + vary: + - Origin + x-amz-apigw-id: + - fukn6GKAoAMELvg= + x-amzn-Remapped-content-length: + - '557' + x-amzn-RequestId: + - e773ce1a-ed4b-4e0d-bff3-c718df4bce98 + x-bt-internal-trace-id: + - 6a4281650000000016fd38f33efd7ca9 + status: + code: 200 + message: OK +- request: + body: '{"rows": [{"_is_merge": false, "context": {"caller_filename": "/Users/abhijeetprasad/.superset/worktrees/698022ff-26ce-4bd5-ac6d-5978cac9c633/pydantic-2.0-support/py/.nox/test_pydantic_ai_integration-latest/lib/python3.14/site-packages/pydantic_ai/direct.py", + "caller_functionname": "_consume_async_stream", "caller_lineno": 384}, "created": + "2026-06-29T14:29:57.042504+00:00", "id": "6a19ff1e-0fd3-42c1-82ff-e67ffac3a43e", + "input": {"instrument": null, "messages": [{"kind": "request", "parts": [{"content": + "Hello", "part_kind": "user-prompt"}], "state": "complete", "timestamp": null}], + "model": "openai:gpt-4o-mini", "model_request_parameters": null, "model_settings": + null}, "log_id": "g", "metadata": {"model": "gpt-4o-mini", "provider": "openai"}, + "metrics": {"start": 1782743397.0425029}, "project_id": "test-pydantic-ai-integration", + "root_span_id": "3f401912518e77e4d5a879b88ef7aab8", "span_attributes": {"exec_counter": + 99, "name": "model_request_stream", "type": "task"}, "span_id": "782c5cf2b0defa72", + "span_parents": ["74f8ec95c9bb3eec"]},{"_is_merge": false, "context": {"caller_filename": + "/Users/abhijeetprasad/.superset/worktrees/698022ff-26ce-4bd5-ac6d-5978cac9c633/pydantic-2.0-support/py/.nox/test_pydantic_ai_integration-latest/lib/python3.14/site-packages/pydantic_ai/direct.py", + "caller_functionname": "_consume_async_stream", "caller_lineno": 384}, "created": + "2026-06-29T14:29:57.042597+00:00", "id": "c007d15f-e065-486a-84f1-b7c760e33652", + "input": {"messages": [{"kind": "request", "parts": [{"content": "Hello", "part_kind": + "user-prompt"}], "state": "complete", "timestamp": null}]}, "log_id": "g", "metadata": + {"model": "gpt-4o-mini", "provider": "openai"}, "metrics": {"start": 1782743397.042596}, + "project_id": "test-pydantic-ai-integration", "root_span_id": "3f401912518e77e4d5a879b88ef7aab8", + "span_attributes": {"exec_counter": 100, "name": "chat gpt-4o-mini", "type": + "llm"}, "span_id": "bdf1cfeca07c7a1b", "span_parents": ["782c5cf2b0defa72"]}], + "api_version": 2}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate, zstd Connection: - keep-alive Content-Length: - - '124' + - '2001' + User-Agent: + - python-requests/2.34.2 + method: POST + uri: https://api.braintrust.dev/logs3 + response: + body: + string: '{"Code":"ForbiddenError","Message":"Missing read access to project_log + id test-pydantic-ai-integration, or the project_log does not exist [user_email=abhijeet@braintrustdata.com] + [user_org=abhi-test-org] [timestamp=1782743397.708]","InternalTraceId":"6a4281650000000026dd42f38e6e7f70","Path":"/logs3","Service":"api"}' + headers: + Connection: + - keep-alive Content-Type: + - application/json; charset=utf-8 + Date: + - Mon, 29 Jun 2026 14:29:57 GMT + Via: + - 1.1 fed71e13dd3ef284a041938d86b5a86e.cloudfront.net (CloudFront), 1.1 481d923c83fdea283794aa186441202a.cloudfront.net + (CloudFront) + X-Amz-Cf-Id: + - YLTeii8_7uEa7oTUV14p8Q5CKIJA_zJekezyr0PTWGgDvm8EOgtJFg== + X-Amz-Cf-Pop: + - IAD61-P9 + - IAD89-P4 + X-Amzn-Trace-Id: + - Root=1-6a428165-69a3358313c1f50c345e7be1;Parent=581ad172c7a0591a;Sampled=0;Lineage=1:24be3d11:0 + X-Cache: + - Error from cloudfront + access-control-allow-credentials: + - 'true' + access-control-expose-headers: + - x-bt-cursor,x-bt-found-existing,x-bt-query-plan,x-bt-api-duration-ms,x-bt-brainstore-duration-ms,x-bt-internal-trace-id,x-bt-error-origin,x-bt-used-endpoint + cache-control: + - no-store, no-cache, must-revalidate, proxy-revalidate + content-length: + - '317' + etag: + - W/"13d-O61UPRhlF6EJJoXiWcshQL+/iqg" + expires: + - '0' + surrogate-control: + - no-store + vary: + - Origin, Accept-Encoding + x-amz-apigw-id: + - fukn8GrmIAMEQQw= + x-amzn-RequestId: + - 534386c3-1234-40c7-8d01-68dc9008bd2e + x-bt-internal-trace-id: + - 6a4281650000000026dd42f38e6e7f70 + status: + code: 403 + message: Forbidden +- request: + body: '{"rows": [{"_is_merge": false, "context": {"caller_filename": "/Users/abhijeetprasad/.superset/worktrees/698022ff-26ce-4bd5-ac6d-5978cac9c633/pydantic-2.0-support/py/.nox/test_pydantic_ai_integration-latest/lib/python3.14/site-packages/pydantic_ai/direct.py", + "caller_functionname": "_consume_async_stream", "caller_lineno": 384}, "created": + "2026-06-29T14:29:57.042504+00:00", "id": "6a19ff1e-0fd3-42c1-82ff-e67ffac3a43e", + "input": {"instrument": null, "messages": [{"kind": "request", "parts": [{"content": + "Hello", "part_kind": "user-prompt"}], "state": "complete", "timestamp": null}], + "model": "openai:gpt-4o-mini", "model_request_parameters": null, "model_settings": + null}, "log_id": "g", "metadata": {"model": "gpt-4o-mini", "provider": "openai"}, + "metrics": {"start": 1782743397.0425029}, "project_id": "test-pydantic-ai-integration", + "root_span_id": "3f401912518e77e4d5a879b88ef7aab8", "span_attributes": {"exec_counter": + 99, "name": "model_request_stream", "type": "task"}, "span_id": "782c5cf2b0defa72", + "span_parents": ["74f8ec95c9bb3eec"]},{"_is_merge": false, "context": {"caller_filename": + "/Users/abhijeetprasad/.superset/worktrees/698022ff-26ce-4bd5-ac6d-5978cac9c633/pydantic-2.0-support/py/.nox/test_pydantic_ai_integration-latest/lib/python3.14/site-packages/pydantic_ai/direct.py", + "caller_functionname": "_consume_async_stream", "caller_lineno": 384}, "created": + "2026-06-29T14:29:57.042597+00:00", "id": "c007d15f-e065-486a-84f1-b7c760e33652", + "input": {"messages": [{"kind": "request", "parts": [{"content": "Hello", "part_kind": + "user-prompt"}], "state": "complete", "timestamp": null}]}, "log_id": "g", "metadata": + {"model": "gpt-4o-mini", "provider": "openai"}, "metrics": {"start": 1782743397.042596}, + "project_id": "test-pydantic-ai-integration", "root_span_id": "3f401912518e77e4d5a879b88ef7aab8", + "span_attributes": {"exec_counter": 100, "name": "chat gpt-4o-mini", "type": + "llm"}, "span_id": "bdf1cfeca07c7a1b", "span_parents": ["782c5cf2b0defa72"]}], + "api_version": 2}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate, zstd + Connection: + - keep-alive + Content-Length: + - '2001' + User-Agent: + - python-requests/2.34.2 + method: POST + uri: https://api.braintrust.dev/logs3 + response: + body: + string: '{"Code":"ForbiddenError","Message":"Missing read access to project_log + id test-pydantic-ai-integration, or the project_log does not exist [user_email=abhijeet@braintrustdata.com] + [user_org=abhi-test-org] [timestamp=1782743398.985]","InternalTraceId":"6a4281660000000061a595a406dcae59","Path":"/logs3","Service":"api"}' + headers: + Connection: + - keep-alive + Content-Type: + - application/json; charset=utf-8 + Date: + - Mon, 29 Jun 2026 14:29:58 GMT + Via: + - 1.1 42d5fcec36fd38fa462bcec0f5f654fe.cloudfront.net (CloudFront), 1.1 01767ca4222611269352c4c93a41c338.cloudfront.net + (CloudFront) + X-Amz-Cf-Id: + - 5vZ9JlK_ki4DlCwWH-moIoydLvresZG4gjbQLa58R__bVfXkleT-Rw== + X-Amz-Cf-Pop: + - IAD61-P9 + - IAD89-P4 + X-Amzn-Trace-Id: + - Root=1-6a428166-06a11eae2bcd62e6284d4b31;Parent=65453fbb2a927c26;Sampled=0;Lineage=1:24be3d11:0 + X-Cache: + - Error from cloudfront + access-control-allow-credentials: + - 'true' + access-control-expose-headers: + - x-bt-cursor,x-bt-found-existing,x-bt-query-plan,x-bt-api-duration-ms,x-bt-brainstore-duration-ms,x-bt-internal-trace-id,x-bt-error-origin,x-bt-used-endpoint + cache-control: + - no-store, no-cache, must-revalidate, proxy-revalidate + content-length: + - '317' + etag: + - W/"13d-//39DMxrZ/7gAM9skahzZnwjoM8" + expires: + - '0' + surrogate-control: + - no-store + vary: + - Origin, Accept-Encoding + x-amz-apigw-id: + - fukoIG_TIAMEqNw= + x-amzn-RequestId: + - 91dc73a6-0125-45da-8372-510144d64f48 + x-bt-internal-trace-id: + - 6a4281660000000061a595a406dcae59 + status: + code: 403 + message: Forbidden +- request: + body: '{"input":[{"role":"user","content":"Hello"}],"model":"gpt-4o-mini","stream":true}' + headers: + accept: + - application/json + accept-encoding: + - gzip, deflate + connection: + - keep-alive + content-length: + - '81' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7Jh636JCG1On2h0WVTOm4z1IUh3","object":"chat.completion.chunk","created":1781551881,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_85fd54540d","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"HbzAdaQkj"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_0d30d0ce06596bee006a4281653ab481a3a8eac5ea11ab5b13","object":"response","created_at":1782743397,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_0d30d0ce06596bee006a4281653ab481a3a8eac5ea11ab5b13","object":"response","created_at":1782743397,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_0d30d0ce06596bee006a4281688ab481a395c4a5e9dd300998","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_0d30d0ce06596bee006a4281688ab481a395c4a5e9dd300998","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"Hello","item_id":"msg_0d30d0ce06596bee006a4281688ab481a395c4a5e9dd300998","logprobs":[],"obfuscation":"FCDmJ4NKIVZ","output_index":0,"sequence_number":4} + + + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"!","item_id":"msg_0d30d0ce06596bee006a4281688ab481a395c4a5e9dd300998","logprobs":[],"obfuscation":"DDkIF1ZYiGiTwbc","output_index":0,"sequence_number":5} - data: {"id":"chatcmpl-Dr7Jh636JCG1On2h0WVTOm4z1IUh3","object":"chat.completion.chunk","created":1781551881,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_85fd54540d","choices":[{"index":0,"delta":{"content":"Hello"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"kknYG6"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7Jh636JCG1On2h0WVTOm4z1IUh3","object":"chat.completion.chunk","created":1781551881,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_85fd54540d","choices":[{"index":0,"delta":{"content":"!"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"YJmxcdl7ye"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" How","item_id":"msg_0d30d0ce06596bee006a4281688ab481a395c4a5e9dd300998","logprobs":[],"obfuscation":"y8EQHmscKvtK","output_index":0,"sequence_number":6} - data: {"id":"chatcmpl-Dr7Jh636JCG1On2h0WVTOm4z1IUh3","object":"chat.completion.chunk","created":1781551881,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_85fd54540d","choices":[{"index":0,"delta":{"content":" - How"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"Zeiu55O"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" can","item_id":"msg_0d30d0ce06596bee006a4281688ab481a395c4a5e9dd300998","logprobs":[],"obfuscation":"yYXiq06MMzv0","output_index":0,"sequence_number":7} - data: {"id":"chatcmpl-Dr7Jh636JCG1On2h0WVTOm4z1IUh3","object":"chat.completion.chunk","created":1781551881,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_85fd54540d","choices":[{"index":0,"delta":{"content":" - can"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"TIc0rPo"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7Jh636JCG1On2h0WVTOm4z1IUh3","object":"chat.completion.chunk","created":1781551881,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_85fd54540d","choices":[{"index":0,"delta":{"content":" - I"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"Eq91xbIyR"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" I","item_id":"msg_0d30d0ce06596bee006a4281688ab481a395c4a5e9dd300998","logprobs":[],"obfuscation":"tputSLIEaD0Qf7","output_index":0,"sequence_number":8} - data: {"id":"chatcmpl-Dr7Jh636JCG1On2h0WVTOm4z1IUh3","object":"chat.completion.chunk","created":1781551881,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_85fd54540d","choices":[{"index":0,"delta":{"content":" - assist"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"gYwL"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" assist","item_id":"msg_0d30d0ce06596bee006a4281688ab481a395c4a5e9dd300998","logprobs":[],"obfuscation":"MNG5eTV0w","output_index":0,"sequence_number":9} - data: {"id":"chatcmpl-Dr7Jh636JCG1On2h0WVTOm4z1IUh3","object":"chat.completion.chunk","created":1781551881,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_85fd54540d","choices":[{"index":0,"delta":{"content":" - you"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"jgY4vBc"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7Jh636JCG1On2h0WVTOm4z1IUh3","object":"chat.completion.chunk","created":1781551881,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_85fd54540d","choices":[{"index":0,"delta":{"content":" - today"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"yZRjx"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" you","item_id":"msg_0d30d0ce06596bee006a4281688ab481a395c4a5e9dd300998","logprobs":[],"obfuscation":"b8wJG6CKJm10","output_index":0,"sequence_number":10} - data: {"id":"chatcmpl-Dr7Jh636JCG1On2h0WVTOm4z1IUh3","object":"chat.completion.chunk","created":1781551881,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_85fd54540d","choices":[{"index":0,"delta":{"content":"?"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"VIFMgArjLH"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" today","item_id":"msg_0d30d0ce06596bee006a4281688ab481a395c4a5e9dd300998","logprobs":[],"obfuscation":"ZEtF2LLaLD","output_index":0,"sequence_number":11} - data: {"id":"chatcmpl-Dr7Jh636JCG1On2h0WVTOm4z1IUh3","object":"chat.completion.chunk","created":1781551881,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_85fd54540d","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"TCwle"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7Jh636JCG1On2h0WVTOm4z1IUh3","object":"chat.completion.chunk","created":1781551881,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_85fd54540d","choices":[],"usage":{"prompt_tokens":8,"completion_tokens":9,"total_tokens":17,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"sQ1P7XNY8G7w"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"?","item_id":"msg_0d30d0ce06596bee006a4281688ab481a395c4a5e9dd300998","logprobs":[],"obfuscation":"MTceS4QaDlL4sfJ","output_index":0,"sequence_number":12} - data: [DONE] + event: response.output_text.done + + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_0d30d0ce06596bee006a4281688ab481a395c4a5e9dd300998","logprobs":[],"output_index":0,"sequence_number":13,"text":"Hello! + How can I assist you today?"} + + + event: response.content_part.done + + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_0d30d0ce06596bee006a4281688ab481a395c4a5e9dd300998","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"Hello! + How can I assist you today?"},"sequence_number":14} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_0d30d0ce06596bee006a4281688ab481a395c4a5e9dd300998","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"Hello! + How can I assist you today?"}],"role":"assistant"},"output_index":0,"sequence_number":15} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_0d30d0ce06596bee006a4281653ab481a3a8eac5ea11ab5b13","object":"response","created_at":1782743397,"status":"completed","background":false,"completed_at":1782743400,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_0d30d0ce06596bee006a4281688ab481a395c4a5e9dd300998","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"Hello! + How can I assist you today?"}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":8,"input_tokens_details":{"cached_tokens":0},"output_tokens":10,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":18},"user":null,"metadata":{}},"sequence_number":16} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe99dbbbebba-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:31:21 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a0585a23ac12-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:57 GMT openai-organization: - braintrust-data openai-processing-ms: - - '250' + - '141' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=jawlklTB.d4PcmHydOZw8JBRm9bKpFKZafjBI2hBwbs-1781551881.256727-1.0.1.1-55T8M3r7UdGLuE532RX.mCF.NxrvdUY4Le2.2KEvn876XR5KNlcZSz0a.6bK9e84dPKsNQoSeOanFMAhbzFjkKrFGgCQwgiZV.oCCDGzT1U_S2cMvd4oQi0ImsTJgHNt; + - __cf_bm=oNETBTbiH2Gad9_eQAuTssY2UofLJATgVujGUGAxnxk-1782743397.1750524-1.0.1.1-enVLz33iINWDyMNMyaWKr0fj8Yta.Art4hS.oMMD1eBZVp9kAToAZHx7m9RLiF2hfS0XA2MfUtKH3.xzjVlcDMFfbyrARl5jFEOl67W8kb14oYdo63FIqehOEHrp9Tm5; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:21 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999997' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:57 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_1395f671cae14399b08794acc9b5ba71 + - 80f89f9e-fd2d-4b5c-bba3-20052824c862 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_multiple_identical_sequential_streams.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_multiple_identical_sequential_streams.yaml index 5705a126..006b81d5 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_multiple_identical_sequential_streams.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_multiple_identical_sequential_streams.yaml @@ -1,406 +1,499 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Count from 1 to 3."}],"model":"gpt-4o-mini","max_completion_tokens":50,"stream":true,"stream_options":{"include_usage":true}}' + body: '{"input":[{"role":"user","content":"Count from 1 to 3."}],"max_output_tokens":50,"model":"gpt-4o-mini","stream":true}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '164' - Content-Type: + content-length: + - '117' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7IzBGprU3AM1x0HxqMBjAVo4sgT","object":"chat.completion.chunk","created":1781551837,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"VwjSJRvcg"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_0d14d88017b0a18c006a428130a7d0819ca7c1c9f5225dad97","object":"response","created_at":1782743344,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_0d14d88017b0a18c006a428130a7d0819ca7c1c9f5225dad97","object":"response","created_at":1782743344,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_0d14d88017b0a18c006a4281312e48819ca72535e19d2ef2ba","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_0d14d88017b0a18c006a4281312e48819ca72535e19d2ef2ba","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"1","item_id":"msg_0d14d88017b0a18c006a4281312e48819ca72535e19d2ef2ba","logprobs":[],"obfuscation":"9ifZqCrLdgOpWKB","output_index":0,"sequence_number":4} - data: {"id":"chatcmpl-Dr7IzBGprU3AM1x0HxqMBjAVo4sgT","object":"chat.completion.chunk","created":1781551837,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"3q865lta9I"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_0d14d88017b0a18c006a4281312e48819ca72535e19d2ef2ba","logprobs":[],"obfuscation":"ygZ62kqky2iydg1","output_index":0,"sequence_number":5} - data: {"id":"chatcmpl-Dr7IzBGprU3AM1x0HxqMBjAVo4sgT","object":"chat.completion.chunk","created":1781551837,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"7PQenlePtc"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7IzBGprU3AM1x0HxqMBjAVo4sgT","object":"chat.completion.chunk","created":1781551837,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"K1Sl1zuyUL"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_0d14d88017b0a18c006a4281312e48819ca72535e19d2ef2ba","logprobs":[],"obfuscation":"60psb1GDs8EMfhu","output_index":0,"sequence_number":6} - data: {"id":"chatcmpl-Dr7IzBGprU3AM1x0HxqMBjAVo4sgT","object":"chat.completion.chunk","created":1781551837,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"V56eWTrjOP"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"2","item_id":"msg_0d14d88017b0a18c006a4281312e48819ca72535e19d2ef2ba","logprobs":[],"obfuscation":"jdiuqXYrAXFzEGn","output_index":0,"sequence_number":7} - data: {"id":"chatcmpl-Dr7IzBGprU3AM1x0HxqMBjAVo4sgT","object":"chat.completion.chunk","created":1781551837,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"EdQz3UNXI6"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7IzBGprU3AM1x0HxqMBjAVo4sgT","object":"chat.completion.chunk","created":1781551837,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"NKPuFJjv5L"} + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_0d14d88017b0a18c006a4281312e48819ca72535e19d2ef2ba","logprobs":[],"obfuscation":"qdWgLuoT6L7JV8z","output_index":0,"sequence_number":8} - data: {"id":"chatcmpl-Dr7IzBGprU3AM1x0HxqMBjAVo4sgT","object":"chat.completion.chunk","created":1781551837,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"vr9g50fwCe"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_0d14d88017b0a18c006a4281312e48819ca72535e19d2ef2ba","logprobs":[],"obfuscation":"nGX5exCFGZSHrP8","output_index":0,"sequence_number":9} - data: {"id":"chatcmpl-Dr7IzBGprU3AM1x0HxqMBjAVo4sgT","object":"chat.completion.chunk","created":1781551837,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"ny4EwP5DrT"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7IzBGprU3AM1x0HxqMBjAVo4sgT","object":"chat.completion.chunk","created":1781551837,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"OdmQs"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"3","item_id":"msg_0d14d88017b0a18c006a4281312e48819ca72535e19d2ef2ba","logprobs":[],"obfuscation":"8eyHKecqefJoPl5","output_index":0,"sequence_number":10} - data: {"id":"chatcmpl-Dr7IzBGprU3AM1x0HxqMBjAVo4sgT","object":"chat.completion.chunk","created":1781551837,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[],"usage":{"prompt_tokens":15,"completion_tokens":8,"total_tokens":23,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"f0hdSaSqEa9"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":".","item_id":"msg_0d14d88017b0a18c006a4281312e48819ca72535e19d2ef2ba","logprobs":[],"obfuscation":"M7vvo3DC0jr8OC8","output_index":0,"sequence_number":11} - data: [DONE] + + event: response.output_text.done + + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_0d14d88017b0a18c006a4281312e48819ca72535e19d2ef2ba","logprobs":[],"output_index":0,"sequence_number":12,"text":"1, + 2, 3."} + + + event: response.content_part.done + + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_0d14d88017b0a18c006a4281312e48819ca72535e19d2ef2ba","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."},"sequence_number":13} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_0d14d88017b0a18c006a4281312e48819ca72535e19d2ef2ba","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"},"output_index":0,"sequence_number":14} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_0d14d88017b0a18c006a428130a7d0819ca7c1c9f5225dad97","object":"response","created_at":1782743344,"status":"completed","background":false,"completed_at":1782743345,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_0d14d88017b0a18c006a4281312e48819ca72535e19d2ef2ba","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":15,"input_tokens_details":{"cached_tokens":0},"output_tokens":9,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":24},"user":null,"metadata":{}},"sequence_number":15} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fd86688eaafd-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:30:37 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f0fcdc17db1-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:04 GMT openai-organization: - braintrust-data openai-processing-ms: - - '335' + - '118' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=1JRIhhWQBz9Snsp_xYJvdf1qYt4QRqG3u.sgV2gjT_I-1781551837.1875308-1.0.1.1-ak7cfrAhAmklCFuD38dybcPAB5BshZlTnbpCgQtCGm13JCOXOjPxLPXHdu8mKdfpFOPiuvqfUHv3WLF976_l76ZWiCBY_L.WDV1v8Xha06hjBoko1oHcwspZrA8q9UAW; + - __cf_bm=RMnjU4epvaFnAz7WPuiCR1MYCae0P4Wo87yGyOmx_9U-1782743344.6040914-1.0.1.1-Vdc6Pb.oREpAgrZC7CZEiXxBPUPjJhOENQAmMPOvgmNNECd_08T0G9y0oQF6ksDIHF3SHAzQIu14qu8OmBLvY7sWpVpGlWxjynLsOHvCZMcEBR4_z1enZjE61zt7YOCE; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:37 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999995' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:04 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_c3007c398f3748b794cb1100a02f3a16 + - 414a02e3-b656-424d-b9d6-c9d409cdac39 status: code: 200 message: OK - request: - body: '{"messages":[{"role":"user","content":"Count from 1 to 3."}],"model":"gpt-4o-mini","max_completion_tokens":50,"stream":true,"stream_options":{"include_usage":true}}' + body: '{"input":[{"role":"user","content":"Count from 1 to 3."}],"max_output_tokens":50,"model":"gpt-4o-mini","stream":true}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '164' - Content-Type: + content-length: + - '117' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7J0fcTKBhC2tEDVYwg1sOAHbNLU","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"WjHs9Mt9l"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_028980e03e4af8b8006a428131b97c81a299e3182a146f26bf","object":"response","created_at":1782743345,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_028980e03e4af8b8006a428131b97c81a299e3182a146f26bf","object":"response","created_at":1782743345,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_028980e03e4af8b8006a4281323c1c81a2bdff1dad6a68543b","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_028980e03e4af8b8006a4281323c1c81a2bdff1dad6a68543b","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"1","item_id":"msg_028980e03e4af8b8006a4281323c1c81a2bdff1dad6a68543b","logprobs":[],"obfuscation":"Mx0jfyb266D98iA","output_index":0,"sequence_number":4} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_028980e03e4af8b8006a4281323c1c81a2bdff1dad6a68543b","logprobs":[],"obfuscation":"hbIuhRYmpwPHsKu","output_index":0,"sequence_number":5} + + + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_028980e03e4af8b8006a4281323c1c81a2bdff1dad6a68543b","logprobs":[],"obfuscation":"zVIvZiv7qbATaWK","output_index":0,"sequence_number":6} - data: {"id":"chatcmpl-Dr7J0fcTKBhC2tEDVYwg1sOAHbNLU","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"UJdzDk5Kkk"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J0fcTKBhC2tEDVYwg1sOAHbNLU","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"BRabu0pxFu"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"2","item_id":"msg_028980e03e4af8b8006a4281323c1c81a2bdff1dad6a68543b","logprobs":[],"obfuscation":"ldLW3e1IPDSmPPu","output_index":0,"sequence_number":7} - data: {"id":"chatcmpl-Dr7J0fcTKBhC2tEDVYwg1sOAHbNLU","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"fJukIvGCJp"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_028980e03e4af8b8006a4281323c1c81a2bdff1dad6a68543b","logprobs":[],"obfuscation":"3FqpvEwNgg9H0xv","output_index":0,"sequence_number":8} - data: {"id":"chatcmpl-Dr7J0fcTKBhC2tEDVYwg1sOAHbNLU","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"Q24XYlfeyH"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J0fcTKBhC2tEDVYwg1sOAHbNLU","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"vVxuPehrj6"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_028980e03e4af8b8006a4281323c1c81a2bdff1dad6a68543b","logprobs":[],"obfuscation":"SlOFHFE7z3L3lTc","output_index":0,"sequence_number":9} - data: {"id":"chatcmpl-Dr7J0fcTKBhC2tEDVYwg1sOAHbNLU","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"lcXBiSTbEr"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"3","item_id":"msg_028980e03e4af8b8006a4281323c1c81a2bdff1dad6a68543b","logprobs":[],"obfuscation":"bYXAQ2CM8hXkHFr","output_index":0,"sequence_number":10} - data: {"id":"chatcmpl-Dr7J0fcTKBhC2tEDVYwg1sOAHbNLU","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"QHK7PsTRRm"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J0fcTKBhC2tEDVYwg1sOAHbNLU","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"upKZomfrlw"} + data: {"type":"response.output_text.delta","content_index":0,"delta":".","item_id":"msg_028980e03e4af8b8006a4281323c1c81a2bdff1dad6a68543b","logprobs":[],"obfuscation":"5b8m4dnVGkwLssU","output_index":0,"sequence_number":11} - data: {"id":"chatcmpl-Dr7J0fcTKBhC2tEDVYwg1sOAHbNLU","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"KW8Wa"} + event: response.output_text.done + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_028980e03e4af8b8006a4281323c1c81a2bdff1dad6a68543b","logprobs":[],"output_index":0,"sequence_number":12,"text":"1, + 2, 3."} - data: {"id":"chatcmpl-Dr7J0fcTKBhC2tEDVYwg1sOAHbNLU","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[],"usage":{"prompt_tokens":15,"completion_tokens":8,"total_tokens":23,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"eov2aiKqDLv"} + event: response.content_part.done - data: [DONE] + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_028980e03e4af8b8006a4281323c1c81a2bdff1dad6a68543b","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."},"sequence_number":13} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_028980e03e4af8b8006a4281323c1c81a2bdff1dad6a68543b","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"},"output_index":0,"sequence_number":14} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_028980e03e4af8b8006a428131b97c81a299e3182a146f26bf","object":"response","created_at":1782743345,"status":"completed","background":false,"completed_at":1782743346,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_028980e03e4af8b8006a4281323c1c81a2bdff1dad6a68543b","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":15,"input_tokens_details":{"cached_tokens":0},"output_tokens":9,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":24},"user":null,"metadata":{}},"sequence_number":15} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fd8adc4890e5-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:30:38 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f166ec0d5a9-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:05 GMT openai-organization: - braintrust-data openai-processing-ms: - - '421' + - '124' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=rqSvG2HVrSAVFK6sOO1fcW.AiGmHUyQ7NQws5yxrKdo-1781551837.895272-1.0.1.1-62CR6avjqGTJ8TCpRGksNl7ZxiaqVCELvDg4_bLnAigShjolMiEn0kWYzYC_HsFfq6jwZdn.2iW1rcopjwFnA8eJ3EOefUQj4gYKr8VzHHUL7I2Ku_lTdr61XsAd2niQ; + - __cf_bm=KnfcrGWsOAtIq8coJCw4aByDgb.vfYu3fdIAKz6QI5o-1782743345.6645927-1.0.1.1-SihN5TqZst8eGQ4r7H8jeDkRengT0_UBQ.9IMJvvbiEMafi_x8D1B4928wVGEzm268qJqHI_v3qa1aoHHVN1dvE13GHt4tTdIU7dergOimR9FWiOhwXtgWFhsilGpYh7; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:38 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999992' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:05 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_bdf714b823fd44278e63bd39747641c0 + - 6256d292-a1a7-45db-84e5-61e8f8998fbd status: code: 200 message: OK - request: - body: '{"messages":[{"role":"user","content":"Count from 1 to 3."}],"model":"gpt-4o-mini","max_completion_tokens":50,"stream":true,"stream_options":{"include_usage":true}}' + body: '{"input":[{"role":"user","content":"Count from 1 to 3."}],"max_output_tokens":50,"model":"gpt-4o-mini","stream":true}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '164' - Content-Type: + content-length: + - '117' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7J0KXAsTzSGCrmIuWXSsszpRiy6","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"MHVsGEUX3"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_02bf3eaeab52bd3e006a428132b5b0819fa21ce2a3ca1f33f1","object":"response","created_at":1782743346,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_02bf3eaeab52bd3e006a428132b5b0819fa21ce2a3ca1f33f1","object":"response","created_at":1782743346,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_02bf3eaeab52bd3e006a4281334f14819f877f6c9b5de9245b","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} - data: {"id":"chatcmpl-Dr7J0KXAsTzSGCrmIuWXSsszpRiy6","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"AlcEOpSJYX"} + event: response.content_part.added + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_02bf3eaeab52bd3e006a4281334f14819f877f6c9b5de9245b","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} - data: {"id":"chatcmpl-Dr7J0KXAsTzSGCrmIuWXSsszpRiy6","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"UzdyjHy2mc"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J0KXAsTzSGCrmIuWXSsszpRiy6","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"sd10wDxs5P"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"1","item_id":"msg_02bf3eaeab52bd3e006a4281334f14819f877f6c9b5de9245b","logprobs":[],"obfuscation":"rZJF8274NTxSEMh","output_index":0,"sequence_number":4} - data: {"id":"chatcmpl-Dr7J0KXAsTzSGCrmIuWXSsszpRiy6","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"aCZ9KmAwId"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_02bf3eaeab52bd3e006a4281334f14819f877f6c9b5de9245b","logprobs":[],"obfuscation":"72LBSaY9aKPQFPi","output_index":0,"sequence_number":5} - data: {"id":"chatcmpl-Dr7J0KXAsTzSGCrmIuWXSsszpRiy6","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"uwz5qaGpgk"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J0KXAsTzSGCrmIuWXSsszpRiy6","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"bG7vlachf1"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_02bf3eaeab52bd3e006a4281334f14819f877f6c9b5de9245b","logprobs":[],"obfuscation":"qlpSpFZlBtq8ad5","output_index":0,"sequence_number":6} - data: {"id":"chatcmpl-Dr7J0KXAsTzSGCrmIuWXSsszpRiy6","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"HFnsC8NKBm"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"2","item_id":"msg_02bf3eaeab52bd3e006a4281334f14819f877f6c9b5de9245b","logprobs":[],"obfuscation":"97ovSPw8Ogfmgxa","output_index":0,"sequence_number":7} - data: {"id":"chatcmpl-Dr7J0KXAsTzSGCrmIuWXSsszpRiy6","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"bGDQ9eBa1T"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J0KXAsTzSGCrmIuWXSsszpRiy6","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"uQg8m"} + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_02bf3eaeab52bd3e006a4281334f14819f877f6c9b5de9245b","logprobs":[],"obfuscation":"H86r227Osg59lTl","output_index":0,"sequence_number":8} - data: {"id":"chatcmpl-Dr7J0KXAsTzSGCrmIuWXSsszpRiy6","object":"chat.completion.chunk","created":1781551838,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[],"usage":{"prompt_tokens":15,"completion_tokens":8,"total_tokens":23,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"3o8u1sulSre"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_02bf3eaeab52bd3e006a4281334f14819f877f6c9b5de9245b","logprobs":[],"obfuscation":"88r6brojffAlD2a","output_index":0,"sequence_number":9} - data: [DONE] + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"3","item_id":"msg_02bf3eaeab52bd3e006a4281334f14819f877f6c9b5de9245b","logprobs":[],"obfuscation":"dVaYJBEYfJIxb15","output_index":0,"sequence_number":10} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":".","item_id":"msg_02bf3eaeab52bd3e006a4281334f14819f877f6c9b5de9245b","logprobs":[],"obfuscation":"dqOE7wckTmkZBRZ","output_index":0,"sequence_number":11} + + + event: response.output_text.done + + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_02bf3eaeab52bd3e006a4281334f14819f877f6c9b5de9245b","logprobs":[],"output_index":0,"sequence_number":12,"text":"1, + 2, 3."} + + + event: response.content_part.done + + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_02bf3eaeab52bd3e006a4281334f14819f877f6c9b5de9245b","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."},"sequence_number":13} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_02bf3eaeab52bd3e006a4281334f14819f877f6c9b5de9245b","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"},"output_index":0,"sequence_number":14} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_02bf3eaeab52bd3e006a428132b5b0819fa21ce2a3ca1f33f1","object":"response","created_at":1782743346,"status":"completed","background":false,"completed_at":1782743347,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_02bf3eaeab52bd3e006a4281334f14819f877f6c9b5de9245b","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":15,"input_tokens_details":{"cached_tokens":0},"output_tokens":9,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":24},"user":null,"metadata":{}},"sequence_number":15} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fd900fcbab27-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:30:39 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f1c4c4eeff9-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:06 GMT openai-organization: - braintrust-data openai-processing-ms: - - '374' + - '211' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=0dOovBlSK5_Ap2FdKZgjh.RT67.S_jVeZMldLzz9aVE-1781551838.72766-1.0.1.1-r_k5rZPoOU6JEcjVcUHbhYaPs82kRO1C1Y._jnE2HGUgRa0QdEDDH3UGtwBaKuLaeUoRKngLd4fgKRlvNH9mwmz7iZ5hb7mJwsX5jb7MeoyP0xHVlC3yZjAwP9RXWBZn; + - __cf_bm=EggVY.6fbuZHxEZ.MRc.AcSW3ZKW3LCIrm2HD.bk92U-1782743346.6087077-1.0.1.1-IZi8uREvjYfVNLN7vmd5EW_hbCC4Juh.Fob4DM46_5B46_dv1BC_75qhDqTWstOI.ke18Zt1jJkEimrG5_yN0gXt327ik_fcTPwjixCtA2bJ8EF_ehnVfOSHFpm1KvDL; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:39 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999992' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:06 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_b429b6cdc99a4c7d9d3cfd89b05def71 + - c24b6a3e-c832-451b-89cf-87a82339559a status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_multiple_sequential_streams.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_multiple_sequential_streams.yaml index 85392867..7930fd9c 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_multiple_sequential_streams.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_multiple_sequential_streams.yaml @@ -1,271 +1,333 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Count from 1 to 3."}],"model":"gpt-4o-mini","max_completion_tokens":50,"stream":true,"stream_options":{"include_usage":true}}' + body: '{"input":[{"role":"user","content":"Count from 1 to 3."}],"max_output_tokens":50,"model":"gpt-4o-mini","stream":true}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '164' - Content-Type: + content-length: + - '117' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7J4xacWCj1qFxreIrnOnHxsQN8J","object":"chat.completion.chunk","created":1781551842,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"nQvfl1qwC"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_09da5641961ed62e006a428133b6d881a1ad23bd13b1dd7e01","object":"response","created_at":1782743347,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_09da5641961ed62e006a428133b6d881a1ad23bd13b1dd7e01","object":"response","created_at":1782743347,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_09da5641961ed62e006a4281341c9481a18ac306adbac803a3","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_09da5641961ed62e006a4281341c9481a18ac306adbac803a3","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"1","item_id":"msg_09da5641961ed62e006a4281341c9481a18ac306adbac803a3","logprobs":[],"obfuscation":"2lcmcOmPuOfq2OK","output_index":0,"sequence_number":4} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_09da5641961ed62e006a4281341c9481a18ac306adbac803a3","logprobs":[],"obfuscation":"g3Z6gq4Pnxdc5uX","output_index":0,"sequence_number":5} + + + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_09da5641961ed62e006a4281341c9481a18ac306adbac803a3","logprobs":[],"obfuscation":"23vu2J3sTGIlY8w","output_index":0,"sequence_number":6} - data: {"id":"chatcmpl-Dr7J4xacWCj1qFxreIrnOnHxsQN8J","object":"chat.completion.chunk","created":1781551842,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"zTjTusFgtU"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J4xacWCj1qFxreIrnOnHxsQN8J","object":"chat.completion.chunk","created":1781551842,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"d2oGux9sYf"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"2","item_id":"msg_09da5641961ed62e006a4281341c9481a18ac306adbac803a3","logprobs":[],"obfuscation":"75PNG6OxotGMHQ4","output_index":0,"sequence_number":7} - data: {"id":"chatcmpl-Dr7J4xacWCj1qFxreIrnOnHxsQN8J","object":"chat.completion.chunk","created":1781551842,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"OhfkDrpTE2"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_09da5641961ed62e006a4281341c9481a18ac306adbac803a3","logprobs":[],"obfuscation":"8wSRIxSWyZn7HYN","output_index":0,"sequence_number":8} - data: {"id":"chatcmpl-Dr7J4xacWCj1qFxreIrnOnHxsQN8J","object":"chat.completion.chunk","created":1781551842,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"37e06YDMYd"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J4xacWCj1qFxreIrnOnHxsQN8J","object":"chat.completion.chunk","created":1781551842,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"3OXW6t3sBq"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_09da5641961ed62e006a4281341c9481a18ac306adbac803a3","logprobs":[],"obfuscation":"pR7r7ACbb6UiDAP","output_index":0,"sequence_number":9} - data: {"id":"chatcmpl-Dr7J4xacWCj1qFxreIrnOnHxsQN8J","object":"chat.completion.chunk","created":1781551842,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"3oUpd7oarD"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"3","item_id":"msg_09da5641961ed62e006a4281341c9481a18ac306adbac803a3","logprobs":[],"obfuscation":"Ombwgw0AGvV86s1","output_index":0,"sequence_number":10} - data: {"id":"chatcmpl-Dr7J4xacWCj1qFxreIrnOnHxsQN8J","object":"chat.completion.chunk","created":1781551842,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"23OrGsebg0"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J4xacWCj1qFxreIrnOnHxsQN8J","object":"chat.completion.chunk","created":1781551842,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"NUDxRFIIwT"} + data: {"type":"response.output_text.delta","content_index":0,"delta":".","item_id":"msg_09da5641961ed62e006a4281341c9481a18ac306adbac803a3","logprobs":[],"obfuscation":"Xo2P2O742zO0tXf","output_index":0,"sequence_number":11} - data: {"id":"chatcmpl-Dr7J4xacWCj1qFxreIrnOnHxsQN8J","object":"chat.completion.chunk","created":1781551842,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"pLuvl"} + event: response.output_text.done + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_09da5641961ed62e006a4281341c9481a18ac306adbac803a3","logprobs":[],"output_index":0,"sequence_number":12,"text":"1, + 2, 3."} - data: {"id":"chatcmpl-Dr7J4xacWCj1qFxreIrnOnHxsQN8J","object":"chat.completion.chunk","created":1781551842,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[],"usage":{"prompt_tokens":15,"completion_tokens":8,"total_tokens":23,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"54O6uCqWOgP"} + event: response.content_part.done - data: [DONE] + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_09da5641961ed62e006a4281341c9481a18ac306adbac803a3","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."},"sequence_number":13} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_09da5641961ed62e006a4281341c9481a18ac306adbac803a3","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"},"output_index":0,"sequence_number":14} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_09da5641961ed62e006a428133b6d881a1ad23bd13b1dd7e01","object":"response","created_at":1782743347,"status":"completed","background":false,"completed_at":1782743348,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_09da5641961ed62e006a4281341c9481a18ac306adbac803a3","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":15,"input_tokens_details":{"cached_tokens":0},"output_tokens":9,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":24},"user":null,"metadata":{}},"sequence_number":15} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fd94ba77aca0-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:30:43 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f22db324cc4-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:07 GMT openai-organization: - braintrust-data openai-processing-ms: - - '482' + - '113' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=EsWH26DqFuUkudYSujeqlz2vllEhXDZy.Z2SQqFJuPY-1781551839.4754457-1.0.1.1-vUvdGgx8wcqePcs07a8ingtYMcRgbRoWeoz_.DSntxTRn462zkRd1RsGxOF8pcvpNMOSbQ9NBpGsvf_iZSnTppvXCpF5XE0C5s57I1k4yozdwOt.GTcApv87gDQwGunw; + - __cf_bm=Jv7XvSLCMm3JROQXAINZ9Fr_i2sZQndH4S6IvgQWzh0-1782743347.6578422-1.0.1.1-Q4Qbn3nIN7HxEEQrJhJbw5II.sNDWwCVQOiM.o_MfQ7FYOj2iYetSlKyIVirzyD9MRG_DWtcJql4kfsEyU9KnH.TUb8Iau0iCG3jvEoCB795.7rnB0Fj0v5vGg_Jv1TJ; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:43 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999995' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:07 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_f8ad48696eb1433fa82b0e80f02d86b8 + - ead2689c-b0d4-488e-af14-0674a25c7327 status: code: 200 message: OK - request: - body: '{"messages":[{"role":"user","content":"Count from 1 to 3."}],"model":"gpt-4o-mini","max_completion_tokens":50,"stream":true,"stream_options":{"include_usage":true}}' + body: '{"input":[{"role":"user","content":"Count from 1 to 3."}],"max_output_tokens":50,"model":"gpt-4o-mini","stream":true}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '164' - Content-Type: + content-length: + - '117' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7J5BphZZM13vUXh4lb2CzClXKYf","object":"chat.completion.chunk","created":1781551843,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"KjPsZiCnM"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_0fc9490619290fdb006a428134824c81a2804e472628e9f9eb","object":"response","created_at":1782743348,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_0fc9490619290fdb006a428134824c81a2804e472628e9f9eb","object":"response","created_at":1782743348,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_0fc9490619290fdb006a428134f59c81a2adbe310e87383c48","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_0fc9490619290fdb006a428134f59c81a2adbe310e87383c48","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"1","item_id":"msg_0fc9490619290fdb006a428134f59c81a2adbe310e87383c48","logprobs":[],"obfuscation":"ZeWQXl5MR5gyOe6","output_index":0,"sequence_number":4} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_0fc9490619290fdb006a428134f59c81a2adbe310e87383c48","logprobs":[],"obfuscation":"t1P7s5mAH97Kq2U","output_index":0,"sequence_number":5} + + + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_0fc9490619290fdb006a428134f59c81a2adbe310e87383c48","logprobs":[],"obfuscation":"omgFrqMpAbf1wjH","output_index":0,"sequence_number":6} - data: {"id":"chatcmpl-Dr7J5BphZZM13vUXh4lb2CzClXKYf","object":"chat.completion.chunk","created":1781551843,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"5afYCiSM4j"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J5BphZZM13vUXh4lb2CzClXKYf","object":"chat.completion.chunk","created":1781551843,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"2zXwNv2uws"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"2","item_id":"msg_0fc9490619290fdb006a428134f59c81a2adbe310e87383c48","logprobs":[],"obfuscation":"iU8ZE90izaJgxws","output_index":0,"sequence_number":7} - data: {"id":"chatcmpl-Dr7J5BphZZM13vUXh4lb2CzClXKYf","object":"chat.completion.chunk","created":1781551843,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"86Q2QNjQlZ"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_0fc9490619290fdb006a428134f59c81a2adbe310e87383c48","logprobs":[],"obfuscation":"rkKSNA57HDQC2cM","output_index":0,"sequence_number":8} - data: {"id":"chatcmpl-Dr7J5BphZZM13vUXh4lb2CzClXKYf","object":"chat.completion.chunk","created":1781551843,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"IUBTnva9G2"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J5BphZZM13vUXh4lb2CzClXKYf","object":"chat.completion.chunk","created":1781551843,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"rv8FhV9dQd"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_0fc9490619290fdb006a428134f59c81a2adbe310e87383c48","logprobs":[],"obfuscation":"EtCSRfVckXHQBDq","output_index":0,"sequence_number":9} - data: {"id":"chatcmpl-Dr7J5BphZZM13vUXh4lb2CzClXKYf","object":"chat.completion.chunk","created":1781551843,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"dhC23h0Znm"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"3","item_id":"msg_0fc9490619290fdb006a428134f59c81a2adbe310e87383c48","logprobs":[],"obfuscation":"YzBqruiEEquDrU9","output_index":0,"sequence_number":10} - data: {"id":"chatcmpl-Dr7J5BphZZM13vUXh4lb2CzClXKYf","object":"chat.completion.chunk","created":1781551843,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"OC6vazm8fu"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7J5BphZZM13vUXh4lb2CzClXKYf","object":"chat.completion.chunk","created":1781551843,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"tXcspK3cGq"} + data: {"type":"response.output_text.delta","content_index":0,"delta":".","item_id":"msg_0fc9490619290fdb006a428134f59c81a2adbe310e87383c48","logprobs":[],"obfuscation":"hGfujn8Qd7oa7tg","output_index":0,"sequence_number":11} - data: {"id":"chatcmpl-Dr7J5BphZZM13vUXh4lb2CzClXKYf","object":"chat.completion.chunk","created":1781551843,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"nhYjF"} + event: response.output_text.done + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_0fc9490619290fdb006a428134f59c81a2adbe310e87383c48","logprobs":[],"output_index":0,"sequence_number":12,"text":"1, + 2, 3."} - data: {"id":"chatcmpl-Dr7J5BphZZM13vUXh4lb2CzClXKYf","object":"chat.completion.chunk","created":1781551843,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_997b5b4ee9","choices":[],"usage":{"prompt_tokens":15,"completion_tokens":8,"total_tokens":23,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"sudfCkYUC68"} + event: response.content_part.done - data: [DONE] + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_0fc9490619290fdb006a428134f59c81a2adbe310e87383c48","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."},"sequence_number":13} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_0fc9490619290fdb006a428134f59c81a2adbe310e87383c48","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"},"output_index":0,"sequence_number":14} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_0fc9490619290fdb006a428134824c81a2804e472628e9f9eb","object":"response","created_at":1782743348,"status":"completed","background":false,"completed_at":1782743349,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":50,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_0fc9490619290fdb006a428134f59c81a2adbe310e87383c48","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3."}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":15,"input_tokens_details":{"cached_tokens":0},"output_tokens":9,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":24},"user":null,"metadata":{}},"sequence_number":15} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fdae1e88ab3a-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:30:43 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f27db48ae18-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:08 GMT openai-organization: - braintrust-data openai-processing-ms: - - '362' + - '127' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=nd4ZrSa_kro0yxKoXRkp1KoC4wvirgH7hJylAX4Ufko-1781551843.5412521-1.0.1.1-XlpStJVukOcvSUb4WfUtHhT8wZz4El38Dvc_7aeuttMWfz9.RBw07FLjWbMWPNgpk5FLZdlwAVC7tYNL1UrZ.I86lFw16BjP1DmpsW.yAZ.WMtnK2b1yVTPl.0FwIkVT; + - __cf_bm=HG1T4fIc6VJ72ctrJ7YYHEbimNTUPKR5Q6R34WdmooE-1782743348.4567044-1.0.1.1-D4B2swTWak5sc8Ne.hpCEHkAbTLDqd645TkNG6WSNsPVT2aaQLUPun3EEOg4Vml54AxOqFhLdulcuseQ5FWTb1U9dAlUfZejEaNFEsNXv0nMzYceJWnEOhdw3287fn1w; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:43 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999992' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:08 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_8935daf754ad4516b977b9d91f637034 + - 9caee103-7445-400f-aa50-5414e800a88d status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_no_model_agent_run.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_no_model_agent_run.yaml index 29404fad..6603d29d 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_no_model_agent_run.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_no_model_agent_run.yaml @@ -1,94 +1,110 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What is 2+2? Answer with just the - number."}],"model":"gpt-4o-mini","max_completion_tokens":50,"stream":false}' + body: '{"input":[{"role":"user","content":"What is 2+2? Answer with just the number."}],"max_output_tokens":50,"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '148' - Content-Type: + content-length: + - '141' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JaVTu5RONjCu2ti8Fz14EDh6fy\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551874,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"4\",\n \"refusal\": null,\n - \ \"annotations\": []\n },\n \"logprobs\": null,\n \"finish_reason\": - \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 20,\n \"completion_tokens\": - 1,\n \"total_tokens\": 21,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_d07f82f293\"\n}\n" + string: "{\n \"id\": \"resp_01fc151d94f4b57c006a42815fb6f8819eb796531ceed1cce2\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743391,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743392,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 50,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_01fc151d94f4b57c006a4281601fd0819eb357809e0de495ba\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"4\"\n }\n ],\n + \ \"role\": \"assistant\"\n }\n ],\n \"parallel_tool_calls\": true,\n + \ \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 20,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 2,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 22\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe704c74178c-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:15 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a035df36076d-YYZ + connection: + - keep-alive content-length: - - '807' + - '1937' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:52 GMT openai-organization: - braintrust-data openai-processing-ms: - - '397' + - '565' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=QBPzLlWVgm0I.wnAwNQxNPQNcS2tkebgiYW2W535uB4-1781551874.6030893-1.0.1.1-OjyfgtRJ53cZNvgWpvVH.ZxpY88ivLCejHTPWfgfGU.cW1gY5vQp96uVcd7ILuTFwE3WbGWSYp8FUQqywH4zNRqYWDZXOAiytJF2Kb3B4thKe16HNeZ1CbkqgxVDPBTs; + - __cf_bm=AMWuhontfAd74MH6SeGlT2w8wllIpX9zyEKQWllkg8I-1782743391.6524482-1.0.1.1-tHxmxQuVTsIVLljMZSUqWXhUwkaJve3w5vVYO1qzMEB3SIYHT4FmEj9pUhLUU9m79Lo1zvyVb6VjqeuOeQI8dDRkVMzb.auSnxMfSFyzuYUB5wPPF0Mg5iyctLEK.Ico; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:15 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:52 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -96,13 +112,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999987' + - '149999962' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_5ce2aa626728450d8b8c99ec93f0a63e + - 1123f4b8-6962-4066-84ba-9f34719d1415 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_no_model_agent_run_with_logfire.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_no_model_agent_run_with_logfire.yaml index 42dad528..21614730 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_no_model_agent_run_with_logfire.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_no_model_agent_run_with_logfire.yaml @@ -1,94 +1,110 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What is 2+2? Answer with just the - number."}],"model":"gpt-4o-mini","max_completion_tokens":50,"stream":false}' + body: '{"input":[{"role":"user","content":"What is 2+2? Answer with just the number."}],"max_output_tokens":50,"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '148' - Content-Type: + content-length: + - '141' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JyqZT5J4joQMBFNBGbnxOLHBD3\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551898,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"4\",\n \"refusal\": null,\n - \ \"annotations\": []\n },\n \"logprobs\": null,\n \"finish_reason\": - \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 20,\n \"completion_tokens\": - 1,\n \"total_tokens\": 21,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_d07f82f293\"\n}\n" + string: "{\n \"id\": \"resp_012c4481d531ab2f006a42817dbb3881a088fb06ceb2143148\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743421,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743422,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 50,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_012c4481d531ab2f006a42817e44cc81a0a870d8a1df8c0bac\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"4\"\n }\n ],\n + \ \"role\": \"assistant\"\n }\n ],\n \"parallel_tool_calls\": true,\n + \ \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 20,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 2,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 22\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3ff063b69ac2d-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:38 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a0f17d744c9b-YYZ + connection: + - keep-alive content-length: - - '807' + - '1937' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:30:22 GMT openai-organization: - braintrust-data openai-processing-ms: - - '288' + - '693' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=RADe0KDlDzDlBBwgn76obzgVqgSni_RHb.EiUUMF984-1781551898.601643-1.0.1.1-Ox2zw8aUT_eYQF2CqzAgUadrvuaPaJrb2ZovyL9vgGlNc4SYb7ujqZ7djCIuTKXEBFra5wWKRzkvaqXJ_dcLTzOzWvW63XhZ3pxJGbPVJ8uKYXFwo0q3n8XAByGbDl_2; + - __cf_bm=B58Pb9O7RY_23Pjw3s3Kyf062s1KIZcYlbobq_yJOnE-1782743421.6768737-1.0.1.1-jAzio2Y4U3mvCEogzMNTKQW9WnYzRme4_E86FiaKXcP9vmO_SggczoLhr0_3CM6NNaoi2HVQgTwieZ7YFtX_Ng105V7eqLrG.L.2m1se95HmaSsNxMZ9XD9hmTyI43lD; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:38 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 15:00:22 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -96,13 +112,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999987' + - '149999960' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_96f52bada39a41a29a3070e3268611e3 + - 6b67427f-f8f1-43b0-8a68-abd67d71d233 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_pydantic_wrapped_completion.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_pydantic_wrapped_completion.yaml index cb33153b..b0e363fb 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_pydantic_wrapped_completion.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_pydantic_wrapped_completion.yaml @@ -2,90 +2,92 @@ interactions: - request: body: '{"messages":[{"role":"user","content":"What is the capital of Italy?"}],"model":"gpt-3.5-turbo","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: + content-length: - '111' - Content-Type: + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST uri: https://api.openai.com/v1/chat/completions response: body: - string: "{\n \"id\": \"chatcmpl-Dr7KEmSSnKAyws6MUBlcFeVkY2JPz\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551914,\n \"model\": \"gpt-3.5-turbo-0125\",\n + string: "{\n \"id\": \"chatcmpl-Dw7ILOMzWuIePbnEx4JQfBUKniEWi\",\n \"object\": + \"chat.completion\",\n \"created\": 1782743437,\n \"model\": \"gpt-3.5-turbo-0125\",\n \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"Rome\",\n \"refusal\": null,\n - \ \"annotations\": []\n },\n \"logprobs\": null,\n \"finish_reason\": - \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 14,\n \"completion_tokens\": - 2,\n \"total_tokens\": 16,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": + \"assistant\",\n \"content\": \"The capital of Italy is Rome.\",\n + \ \"refusal\": null,\n \"annotations\": []\n },\n \"logprobs\": + null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": + 14,\n \"completion_tokens\": 7,\n \"total_tokens\": 21,\n \"prompt_tokens_details\": + {\n \"cached_tokens\": 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": \"default\",\n \"system_fingerprint\": null\n}\n" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3ff674b89086a-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:55 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a153ec44378a-YYZ + connection: + - keep-alive content-length: - - '795' + - '820' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:30:39 GMT openai-organization: - braintrust-data openai-processing-ms: - - '1201' + - '1553' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=6PLFRbm2OyMeb2XEcghrFFJ3UguJkHyPKuedI_ySSwE-1781551914.124319-1.0.1.1-5FiIPCtp8eZgkIy_3jSsJgxnMo9eFc9ie6G0xkELw4ZEtWBsu6Z.vY18wZqn8I.cH4aEZnkKHrh56GCGCEc00bibcnofwzbeR3T0NAon1nSOFP.SyuOp5HvRKo7PllCg; + - __cf_bm=22tCJnaZB3n7.fWppngKdXQuiFgHWcbZksyTYB6Owg0-1782743437.421439-1.0.1.1-VKsckAED4R2vmrSRLkETNyTHbUKPHCBUor4yQE7fT.XjdkLw38IK3SnPyoAu5zbxZzL6VE3HPNOKrxhtAKjTZG0pIhoDZuy8A9i7zZ_tHTt_xKodztxOgEW_ogGyd.gM; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:55 GMT + 29 Jun 2026 15:00:39 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-openai-proxy-wasm: - v0.1 x-ratelimit-limit-requests: @@ -101,53 +103,53 @@ interactions: x-ratelimit-reset-tokens: - 0s x-request-id: - - req_43b0a79e717940f5bc5222fc2dc5133b + - req_04a85b07b2c94dc2befe1c8dc8e6124e status: code: 200 message: OK - request: body: '{"messages":[{"role":"user","content":"What is the capital of Italy?"}],"model":"gpt-3.5-turbo","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: + content-length: - '111' - Content-Type: + content-type: - application/json - Cookie: - - __cf_bm=6PLFRbm2OyMeb2XEcghrFFJ3UguJkHyPKuedI_ySSwE-1781551914.124319-1.0.1.1-5FiIPCtp8eZgkIy_3jSsJgxnMo9eFc9ie6G0xkELw4ZEtWBsu6Z.vY18wZqn8I.cH4aEZnkKHrh56GCGCEc00bibcnofwzbeR3T0NAon1nSOFP.SyuOp5HvRKo7PllCg - Host: + cookie: + - __cf_bm=22tCJnaZB3n7.fWppngKdXQuiFgHWcbZksyTYB6Owg0-1782743437.421439-1.0.1.1-VKsckAED4R2vmrSRLkETNyTHbUKPHCBUor4yQE7fT.XjdkLw38IK3SnPyoAu5zbxZzL6VE3HPNOKrxhtAKjTZG0pIhoDZuy8A9i7zZ_tHTt_xKodztxOgEW_ogGyd.gM + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST uri: https://api.openai.com/v1/chat/completions response: body: - string: "{\n \"id\": \"chatcmpl-Dr7KFHjAH101n3dmRFaxEi6dp92zg\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551915,\n \"model\": \"gpt-3.5-turbo-0125\",\n + string: "{\n \"id\": \"chatcmpl-Dw7INMbt9IyZtLw09VWzaVbo1l1q6\",\n \"object\": + \"chat.completion\",\n \"created\": 1782743439,\n \"model\": \"gpt-3.5-turbo-0125\",\n \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": \"assistant\",\n \"content\": \"Rome\",\n \"refusal\": null,\n \ \"annotations\": []\n },\n \"logprobs\": null,\n \"finish_reason\": @@ -158,38 +160,40 @@ interactions: 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": \"default\",\n \"system_fingerprint\": null\n}\n" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3ff707a8eb2eb-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:56 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a15e6dff378a-YYZ + connection: + - keep-alive content-length: - '795' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:30:39 GMT openai-organization: - braintrust-data openai-processing-ms: - - '1164' + - '764' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-openai-proxy-wasm: - v0.1 x-ratelimit-limit-requests: @@ -205,7 +209,7 @@ interactions: x-ratelimit-reset-tokens: - 0s x-request-id: - - req_ecaa18165c5944a0aa31b2c6c2f5adde + - req_2ebed9072188437a9808509ceea53709 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_pydantic_wrapped_stream.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_pydantic_wrapped_stream.yaml index 1d2b3bf1..7fd7182c 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_pydantic_wrapped_stream.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_pydantic_wrapped_stream.yaml @@ -2,55 +2,58 @@ interactions: - request: body: '{"messages":[{"role":"user","content":"What is the capital of Italy?"}],"model":"gpt-3.5-turbo","stream":true,"stream_options":{"include_usage":true}}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: + content-length: - '150' - Content-Type: + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST uri: https://api.openai.com/v1/chat/completions response: body: - string: 'data: {"id":"chatcmpl-Dr7KBNf3X8L6mDwfisExYEKqKDR1T","object":"chat.completion.chunk","created":1781551911,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"25goNQpu"} + string: 'data: {"id":"chatcmpl-Dw7IIRgri91HgGrLyteLRIR051ecN","object":"chat.completion.chunk","created":1782743434,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"05H0dtfi"} + + + data: {"id":"chatcmpl-Dw7IIRgri91HgGrLyteLRIR051ecN","object":"chat.completion.chunk","created":1782743434,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"R"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"hk6CISkyE"} - data: {"id":"chatcmpl-Dr7KBNf3X8L6mDwfisExYEKqKDR1T","object":"chat.completion.chunk","created":1781551911,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"R"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"qc9ZgoxS5"} + data: {"id":"chatcmpl-Dw7IIRgri91HgGrLyteLRIR051ecN","object":"chat.completion.chunk","created":1782743434,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"ome"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"h8pIEAB"} - data: {"id":"chatcmpl-Dr7KBNf3X8L6mDwfisExYEKqKDR1T","object":"chat.completion.chunk","created":1781551911,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"ome"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"4pFcimE"} + data: {"id":"chatcmpl-Dw7IIRgri91HgGrLyteLRIR051ecN","object":"chat.completion.chunk","created":1782743434,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"Ci1NMYvUv"} - data: {"id":"chatcmpl-Dr7KBNf3X8L6mDwfisExYEKqKDR1T","object":"chat.completion.chunk","created":1781551911,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"QQ1j"} + data: {"id":"chatcmpl-Dw7IIRgri91HgGrLyteLRIR051ecN","object":"chat.completion.chunk","created":1782743434,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"yOB2"} - data: {"id":"chatcmpl-Dr7KBNf3X8L6mDwfisExYEKqKDR1T","object":"chat.completion.chunk","created":1781551911,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[],"usage":{"prompt_tokens":14,"completion_tokens":2,"total_tokens":16,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"Y5s2SoLp99"} + data: {"id":"chatcmpl-Dw7IIRgri91HgGrLyteLRIR051ecN","object":"chat.completion.chunk","created":1782743434,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[],"usage":{"prompt_tokens":14,"completion_tokens":3,"total_tokens":17,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"1FQGUu3wFi"} data: [DONE] @@ -58,43 +61,42 @@ interactions: ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3ff557f4a90a8-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:31:52 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a13f19c0fc7d-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:30:35 GMT openai-organization: - braintrust-data openai-processing-ms: - - '1260' + - '1249' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=dcMmJjK2FlQE5JHEezIg9R8Kw.LqE6_dIEAbvW8AXTk-1781551911.27725-1.0.1.1-XB1mo7iaLj28ic1BmmH_XImEhJ9NsjFwQRN7WlKzkQFEshw_SV133K0WWeyticruF5lvbns47HXyDgmkWFaK0WyIE7HzyrE6Ysn6LXDqKHRQcmKhTj3Jq.nmQMuVLcJp; + - __cf_bm=DZ18.r5ALuqXkNdT.9rdNNr_mcfopRzFgRrZz5T6faM-1782743434.096828-1.0.1.1-E7MT5ZOUdWnI7G3mgS8Lza2TKPYI09PDmLhya0FdhPoxilCvHoCSWfD29SiXg7nwTOHqr8nZc.EoCt0ciwSBbsreMJU6s_ufJlvpy78_Rcm8VKQxawQH8UicVJJTJpUV; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:52 GMT + 29 Jun 2026 15:00:35 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-openai-proxy-wasm: - v0.1 x-ratelimit-limit-requests: @@ -110,64 +112,64 @@ interactions: x-ratelimit-reset-tokens: - 0s x-request-id: - - req_5c5654beb5cb44b18d14c5ab992c6f69 + - req_3a70e28f6b564868b5f1794dd7c163b2 status: code: 200 message: OK - request: body: '{"messages":[{"role":"user","content":"What is the capital of Italy?"}],"model":"gpt-3.5-turbo","stream":true,"stream_options":{"include_usage":true}}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: + content-length: - '150' - Content-Type: + content-type: - application/json - Cookie: - - __cf_bm=dcMmJjK2FlQE5JHEezIg9R8Kw.LqE6_dIEAbvW8AXTk-1781551911.27725-1.0.1.1-XB1mo7iaLj28ic1BmmH_XImEhJ9NsjFwQRN7WlKzkQFEshw_SV133K0WWeyticruF5lvbns47HXyDgmkWFaK0WyIE7HzyrE6Ysn6LXDqKHRQcmKhTj3Jq.nmQMuVLcJp - Host: + cookie: + - __cf_bm=DZ18.r5ALuqXkNdT.9rdNNr_mcfopRzFgRrZz5T6faM-1782743434.096828-1.0.1.1-E7MT5ZOUdWnI7G3mgS8Lza2TKPYI09PDmLhya0FdhPoxilCvHoCSWfD29SiXg7nwTOHqr8nZc.EoCt0ciwSBbsreMJU6s_ufJlvpy78_Rcm8VKQxawQH8UicVJJTJpUV + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST uri: https://api.openai.com/v1/chat/completions response: body: - string: 'data: {"id":"chatcmpl-Dr7KC6njnKW5dUJJihv9PVIaioS7t","object":"chat.completion.chunk","created":1781551912,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"Mc5I6Mhp"} + string: 'data: {"id":"chatcmpl-Dw7IJCIMTHYxZSZohCGkqesvzHbSx","object":"chat.completion.chunk","created":1782743435,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"5XmaHTCH"} - data: {"id":"chatcmpl-Dr7KC6njnKW5dUJJihv9PVIaioS7t","object":"chat.completion.chunk","created":1781551912,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"R"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"I4wuS8EQV"} + data: {"id":"chatcmpl-Dw7IJCIMTHYxZSZohCGkqesvzHbSx","object":"chat.completion.chunk","created":1782743435,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"R"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"fhDKhcA42"} - data: {"id":"chatcmpl-Dr7KC6njnKW5dUJJihv9PVIaioS7t","object":"chat.completion.chunk","created":1781551912,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"ome"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"8w30gla"} + data: {"id":"chatcmpl-Dw7IJCIMTHYxZSZohCGkqesvzHbSx","object":"chat.completion.chunk","created":1782743435,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{"content":"ome"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"hLNneUV"} - data: {"id":"chatcmpl-Dr7KC6njnKW5dUJJihv9PVIaioS7t","object":"chat.completion.chunk","created":1781551912,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"VN3Q"} + data: {"id":"chatcmpl-Dw7IJCIMTHYxZSZohCGkqesvzHbSx","object":"chat.completion.chunk","created":1782743435,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"EJYS"} - data: {"id":"chatcmpl-Dr7KC6njnKW5dUJJihv9PVIaioS7t","object":"chat.completion.chunk","created":1781551912,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[],"usage":{"prompt_tokens":14,"completion_tokens":2,"total_tokens":16,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"xYs8T7zioh"} + data: {"id":"chatcmpl-Dw7IJCIMTHYxZSZohCGkqesvzHbSx","object":"chat.completion.chunk","created":1782743435,"model":"gpt-3.5-turbo-0125","service_tier":"default","system_fingerprint":null,"choices":[],"usage":{"prompt_tokens":14,"completion_tokens":2,"total_tokens":16,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"uz1UAlT0mW"} data: [DONE] @@ -175,39 +177,38 @@ interactions: ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3ff5f5e79c109-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:31:53 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a148d975fc7d-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:30:37 GMT openai-organization: - braintrust-data openai-processing-ms: - - '899' + - '1555' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-openai-proxy-wasm: - v0.1 x-ratelimit-limit-requests: @@ -223,7 +224,7 @@ interactions: x-ratelimit-reset-tokens: - 0s x-request-id: - - req_2d2dcf7e58b047faa3de9c7664ecb0fc + - req_695c672e3d8c47358ca7f37736066cd7 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_stream_buffer_pattern_early_return.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_stream_buffer_pattern_early_return.yaml index 70029526..863b1e29 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_stream_buffer_pattern_early_return.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_stream_buffer_pattern_early_return.yaml @@ -1,156 +1,232 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Count from 1 to 5"}],"model":"gpt-4o-mini","stream":true,"stream_options":{"include_usage":true}}' + body: '{"input":[{"role":"user","content":"Count from 1 to 5"}],"model":"gpt-4o-mini","stream":true}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '136' - Content-Type: + content-length: + - '93' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"c7ZzVkl2k"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_02c1d64d02898bd5006a4281513f2881a1a6f8e714671a76a3","object":"response","created_at":1782743377,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_02c1d64d02898bd5006a4281513f2881a1a6f8e714671a76a3","object":"response","created_at":1782743377,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"Sure","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"Yvefs9xt8DaY","output_index":0,"sequence_number":4} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"!","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"VZFl2NQDFH2Anqh","output_index":0,"sequence_number":5} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" Here","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"diuud9h9tfD","output_index":0,"sequence_number":6} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" you","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"SDoIvildUuup","output_index":0,"sequence_number":7} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" go","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"uHLXOFmeY5jEW","output_index":0,"sequence_number":8} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":":","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"WbM0HoYNXUlaJYv","output_index":0,"sequence_number":9} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"rActsRuK1bh3MHM","output_index":0,"sequence_number":10} + + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"M55iBKzXE8"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"1","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"aLjDVH0qjX18Php","output_index":0,"sequence_number":11} - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"KBS3GRvLiH"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"GfLbRLDZJvHkoi4","output_index":0,"sequence_number":12} - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"hmNEWPjWfa"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"SWA7X1mtEr"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"D0y7RkTDwImoqlb","output_index":0,"sequence_number":13} - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"TFbNhYmAyS"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"2","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"0HrGdTrzdlNFBYy","output_index":0,"sequence_number":14} - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"fH0bJMbOdS"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"AOeYAsXv00"} + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"65hN28hoUbY7ouT","output_index":0,"sequence_number":15} - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"ic4YYiL9Ig"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"eoTKCadPHwkYxxb","output_index":0,"sequence_number":16} - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"R3Ph1C5l2T"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"gJaaE0FQRo"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"3","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"pbbYBilk7nKUr45","output_index":0,"sequence_number":17} - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"y7OZqBN4My"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"cMVPazOxnLmwpBD","output_index":0,"sequence_number":18} - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"BtS5dhNJM1"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"5"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"ZcdrjGYnH0"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"RgHKWNMh5f47zsM","output_index":0,"sequence_number":19} - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"Yh59hyAWDG"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"4","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"FVktyUBq6chaSN1","output_index":0,"sequence_number":20} - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"igcVd"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JOzbtv5eg3N4Ptgl2bW20T2mQJ","object":"chat.completion.chunk","created":1781551862,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[],"usage":{"prompt_tokens":14,"completion_tokens":14,"total_tokens":28,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"S20cRJPMI8"} + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"x4HQU1MT3dQVDmR","output_index":0,"sequence_number":21} - data: [DONE] + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"rX1jwVhdKkcH9i4","output_index":0,"sequence_number":22} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"5","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"HUqitWQZERT2Pcg","output_index":0,"sequence_number":23} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":".","item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"obfuscation":"IDmjrMmftLdIy9p","output_index":0,"sequence_number":24} + + + event: response.output_text.done + + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","logprobs":[],"output_index":0,"sequence_number":25,"text":"Sure! + Here you go: 1, 2, 3, 4, 5."} + + + event: response.content_part.done + + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"Sure! + Here you go: 1, 2, 3, 4, 5."},"sequence_number":26} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"Sure! + Here you go: 1, 2, 3, 4, 5."}],"role":"assistant"},"output_index":0,"sequence_number":27} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_02c1d64d02898bd5006a4281513f2881a1a6f8e714671a76a3","object":"response","created_at":1782743377,"status":"completed","background":false,"completed_at":1782743378,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_02c1d64d02898bd5006a428151c08081a1bf9fe76350c8eda8","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"Sure! + Here you go: 1, 2, 3, 4, 5."}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":14,"input_tokens_details":{"cached_tokens":0},"output_tokens":22,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":36},"user":null,"metadata":{}},"sequence_number":28} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe20add49113-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:31:02 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359fdb5d72f288-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:37 GMT openai-organization: - braintrust-data openai-processing-ms: - - '341' + - '184' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=ovZmB5S9mqBA8B3AQi784vX5Gi.RsWcXzG0bgWpW2gs-1781551861.867264-1.0.1.1-3MXm6sWropQ30je3zDP4g0EaNXGCQBKSw2mE7m.BHKH2RM63oEfRJNqNFch.v3xpbG11HG9Rh0RVn4A.7XGtCXj5ZXGnYoo46M2PTKozKFQ7rtC_f1.Bz54TuhcccESp; + - __cf_bm=jshctoAFYNwo5JnrCfr9EpVHVhTE4s5AAK7Ypt0_DqQ-1782743377.1786902-1.0.1.1-BdfRpyOIEldadWmq6Vj.WL4Tt0u9bz._41Y63KREmOCLg.ww061CXBapkn4tpkt1vvNF2B9_wxYRMCqj5CA_.sC3FxZt7wH3Tab9BGj7t7GBd5.JL15bxvxW2dAjW6QX; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:02 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999995' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:37 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_40f2cd412e49405e9b2038026b437ac7 + - cc26e6e1-43b3-4381-b68f-a72bd9633e7b status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_stream_early_break_async_generator.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_stream_early_break_async_generator.yaml index 536f143e..823ef537 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_stream_early_break_async_generator.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_stream_early_break_async_generator.yaml @@ -1,156 +1,197 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"Count from 1 to 5"}],"model":"gpt-4o-mini","stream":true,"stream_options":{"include_usage":true}}' + body: '{"input":[{"role":"user","content":"Count from 1 to 5"}],"model":"gpt-4o-mini","stream":true}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '136' - Content-Type: + content-length: + - '93' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: 'data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"role":"assistant","content":"","refusal":null},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"bSXA8K4Ck"} + string: 'event: response.created + + data: {"type":"response.created","response":{"id":"resp_05948ce51a725a51006a42814f0e4c81a3af79b269efc0bc43","object":"response","created_at":1782743375,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":0} + + + event: response.in_progress + + data: {"type":"response.in_progress","response":{"id":"resp_05948ce51a725a51006a42814f0e4c81a3af79b269efc0bc43","object":"response","created_at":1782743375,"status":"in_progress","background":false,"completed_at":null,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"auto","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":null,"user":null,"metadata":{}},"sequence_number":1} + + + event: response.output_item.added + + data: {"type":"response.output_item.added","item":{"id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","type":"message","status":"in_progress","content":[],"role":"assistant"},"output_index":0,"sequence_number":2} + + + event: response.content_part.added + + data: {"type":"response.content_part.added","content_index":0,"item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":""},"sequence_number":3} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":"1","item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","logprobs":[],"obfuscation":"IJNCsq7FI5XUpu1","output_index":0,"sequence_number":4} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","logprobs":[],"obfuscation":"7Sd493mqjGiJgMu","output_index":0,"sequence_number":5} + + + event: response.output_text.delta + + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","logprobs":[],"obfuscation":"paQepNtiqsBJcUU","output_index":0,"sequence_number":6} + + + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"2","item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","logprobs":[],"obfuscation":"H9qgTNTvnIj3C4Z","output_index":0,"sequence_number":7} - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"1"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"kQzQNiUDgY"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"KJlzwRN5Fz"} + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","logprobs":[],"obfuscation":"PBwI8AYApO77t1w","output_index":0,"sequence_number":8} - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"UNrZOhRQLC"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","logprobs":[],"obfuscation":"1NHnihDTLpfP5R7","output_index":0,"sequence_number":9} - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"2"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"LGtAtC12tg"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"kaui9cAfmB"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"3","item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","logprobs":[],"obfuscation":"7o52kJXiligaII0","output_index":0,"sequence_number":10} - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"eAjZqAhGgU"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","logprobs":[],"obfuscation":"JGR7EKGZOiS3qd7","output_index":0,"sequence_number":11} - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"3"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"72OOLrvuHI"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"OFUn2OQs1j"} + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","logprobs":[],"obfuscation":"1GrE79dxfwsFuHK","output_index":0,"sequence_number":12} - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"3NyOX05p7R"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":"4","item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","logprobs":[],"obfuscation":"r5UxoLyU9rytevs","output_index":0,"sequence_number":13} - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"4"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"S1I6rXiAxV"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":","},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"KGcL3Km0Yr"} + data: {"type":"response.output_text.delta","content_index":0,"delta":",","item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","logprobs":[],"obfuscation":"KzEscZKd6WsMZv9","output_index":0,"sequence_number":14} - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":" - "},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"9kcogh76QB"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":" ","item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","logprobs":[],"obfuscation":"p7z2DseKhwUFDx4","output_index":0,"sequence_number":15} - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"5"},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"ATPGBOPEgr"} + event: response.output_text.delta - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{"content":"."},"logprobs":null,"finish_reason":null}],"usage":null,"obfuscation":"IumfQGDSKT"} + data: {"type":"response.output_text.delta","content_index":0,"delta":"5","item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","logprobs":[],"obfuscation":"yRwbOvdbdq4l76L","output_index":0,"sequence_number":16} - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[{"index":0,"delta":{},"logprobs":null,"finish_reason":"stop"}],"usage":null,"obfuscation":"kGMMj"} + event: response.output_text.delta + data: {"type":"response.output_text.delta","content_index":0,"delta":".","item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","logprobs":[],"obfuscation":"OXRNp47a0vayoa5","output_index":0,"sequence_number":17} - data: {"id":"chatcmpl-Dr7JMDH0ynYlw94isbBuTkGRjyOMi","object":"chat.completion.chunk","created":1781551860,"model":"gpt-4o-mini-2024-07-18","service_tier":"default","system_fingerprint":"fp_623c0b2958","choices":[],"usage":{"prompt_tokens":14,"completion_tokens":14,"total_tokens":28,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"completion_tokens_details":{"reasoning_tokens":0,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0}},"obfuscation":"XsYe8lCbtQ"} + event: response.output_text.done - data: [DONE] + data: {"type":"response.output_text.done","content_index":0,"item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","logprobs":[],"output_index":0,"sequence_number":18,"text":"1, + 2, 3, 4, 5."} + + + event: response.content_part.done + + data: {"type":"response.content_part.done","content_index":0,"item_id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","output_index":0,"part":{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3, 4, 5."},"sequence_number":19} + + + event: response.output_item.done + + data: {"type":"response.output_item.done","item":{"id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3, 4, 5."}],"role":"assistant"},"output_index":0,"sequence_number":20} + + + event: response.completed + + data: {"type":"response.completed","response":{"id":"resp_05948ce51a725a51006a42814f0e4c81a3af79b269efc0bc43","object":"response","created_at":1782743375,"status":"completed","background":false,"completed_at":1782743375,"error":null,"frequency_penalty":0.0,"incomplete_details":null,"instructions":null,"max_output_tokens":null,"max_tool_calls":null,"model":"gpt-4o-mini-2024-07-18","moderation":null,"output":[{"id":"msg_05948ce51a725a51006a42814f840881a3a6be33d4af633202","type":"message","status":"completed","content":[{"type":"output_text","annotations":[],"logprobs":[],"text":"1, + 2, 3, 4, 5."}],"role":"assistant"}],"parallel_tool_calls":true,"presence_penalty":0.0,"previous_response_id":null,"prompt_cache_key":null,"prompt_cache_retention":"in_memory","reasoning":{"context":null,"effort":null,"summary":null},"safety_identifier":null,"service_tier":"default","store":true,"temperature":1.0,"text":{"format":{"type":"text"},"verbosity":"medium"},"tool_choice":"auto","tool_usage":{"image_gen":{"input_tokens":0,"input_tokens_details":{"image_tokens":0,"text_tokens":0},"output_tokens":0,"output_tokens_details":{"image_tokens":0,"text_tokens":0},"total_tokens":0},"web_search":{"num_requests":0}},"tools":[],"top_logprobs":0,"top_p":1.0,"truncation":"disabled","usage":{"input_tokens":14,"input_tokens_details":{"cached_tokens":0},"output_tokens":15,"output_tokens_details":{"reasoning_tokens":0},"total_tokens":29},"user":null,"metadata":{}},"sequence_number":21} ' headers: - Access-Control-Expose-Headers: - - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe17caf5a1de-YYZ - Connection: - - keep-alive - Content-Type: - - text/event-stream; charset=utf-8 - Date: - - Mon, 15 Jun 2026 19:31:00 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff access-control-expose-headers: - X-Request-ID - CF-Ray + - CF-Ray alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359fcdba6dc85f-YYZ + connection: + - keep-alive + content-type: + - text/event-stream; charset=utf-8 + date: + - Mon, 29 Jun 2026 14:29:35 GMT openai-organization: - braintrust-data openai-processing-ms: - - '387' + - '135' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=J5_tfPjM_pyj4nazmHDslWjeokg4G3DFdhqbouWInZk-1781551860.450925-1.0.1.1-kYej1iKTgeOyvWvlCV1MRY3OdFzIUXgD.a1JrmK65T_z.DZMEdh1i1b02tBO_BayTU7cX1G4acMl4Cs8laIEK8qPgLt_mVskDhUZ6TDN.1Hbnd.hx450BwM8VUK4BdoR; + - __cf_bm=lL3cqP_CoOGn5XvlNzjC8CUS6Sehi280iLXny6QWQoE-1782743374.9975207-1.0.1.1-wltzPPmMTNeniLYafuA3OR58G01TtIZ9CPcqhiY4acL_bonOH4z1lO0KQ4Z6yPBoRLWCoxRNgaLhpuFQKGI7JQj0wRLuCvbXW64u.Pl47ZtW0tFpUqJeG6GnaTACW.6e; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:00 GMT - x-openai-proxy-wasm: - - v0.1 - x-ratelimit-limit-requests: - - '30000' - x-ratelimit-limit-tokens: - - '150000000' - x-ratelimit-remaining-requests: - - '29999' - x-ratelimit-remaining-tokens: - - '149999992' - x-ratelimit-reset-requests: - - 2ms - x-ratelimit-reset-tokens: - - 0s + 29 Jun 2026 14:59:35 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-request-id: - - req_fe04ea762a314f7fa8740811522ac36a + - 7cc9c783-c883-4db6-bbc0-90104d4c4520 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_tool_execution_creates_spans.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_tool_execution_creates_spans.yaml index 255259aa..b2dbb1e6 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_tool_execution_creates_spans.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_tool_execution_creates_spans.yaml @@ -1,98 +1,118 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What is 127 multiplied by 49?"}],"model":"gpt-4o-mini","max_completion_tokens":500,"stream":false,"tool_choice":"auto","tools":[{"type":"function","function":{"name":"calculate","description":"Perform - a mathematical calculation.","parameters":{"additionalProperties":false,"properties":{"operation":{"type":"string"},"a":{"type":"number"},"b":{"type":"number"}},"required":["operation","a","b"],"type":"object"},"strict":true}}]}' + body: '{"input":[{"role":"user","content":"What is 127 multiplied by 49?"}],"max_output_tokens":500,"model":"gpt-4o-mini","stream":false,"tool_choice":"auto","tools":[{"name":"calculate","parameters":{"additionalProperties":false,"properties":{"operation":{"type":"string"},"a":{"type":"number"},"b":{"type":"number"}},"required":["operation","a","b"],"type":"object"},"type":"function","description":"Perform + a mathematical calculation.","strict":true}]}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '468' - Content-Type: + content-length: + - '448' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JWx8B2x8J0cUrIgJjoPoAKhITo\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551870,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": null,\n \"tool_calls\": [\n {\n - \ \"id\": \"call_MDiEnFZ4LsNkrDT7KIV9WL76\",\n \"type\": - \"function\",\n \"function\": {\n \"name\": \"calculate\",\n - \ \"arguments\": \"{\\\"operation\\\":\\\"multiply\\\",\\\"a\\\":127,\\\"b\\\":49}\"\n - \ }\n }\n ],\n \"refusal\": null,\n \"annotations\": - []\n },\n \"logprobs\": null,\n \"finish_reason\": \"tool_calls\"\n - \ }\n ],\n \"usage\": {\n \"prompt_tokens\": 58,\n \"completion_tokens\": - 21,\n \"total_tokens\": 79,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_899b586ef5\"\n}\n" + string: "{\n \"id\": \"resp_0a09b58cfa638b48006a42815bb81481928809bbd4e2c85845\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743387,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743388,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 500,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"fc_0a09b58cfa638b48006a42815c70b88192ab0db0a76a5442a1\",\n + \ \"type\": \"function_call\",\n \"status\": \"completed\",\n \"arguments\": + \"{\\\"operation\\\":\\\"multiply\\\",\\\"a\\\":127,\\\"b\\\":49}\",\n \"call_id\": + \"call_DyWjdmXMq6sspmEOVgidjVtT\",\n \"name\": \"calculate\"\n }\n + \ ],\n \"parallel_tool_calls\": true,\n \"presence_penalty\": 0.0,\n \"previous_response_id\": + null,\n \"prompt_cache_key\": null,\n \"prompt_cache_retention\": \"in_memory\",\n + \ \"reasoning\": {\n \"context\": null,\n \"effort\": null,\n \"summary\": + null\n },\n \"safety_identifier\": null,\n \"service_tier\": \"default\",\n + \ \"store\": true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": + {\n \"type\": \"text\"\n },\n \"verbosity\": \"medium\"\n },\n + \ \"tool_choice\": \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n + \ \"input_tokens\": 0,\n \"input_tokens_details\": {\n \"image_tokens\": + 0,\n \"text_tokens\": 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [\n {\n \"type\": \"function\",\n \"description\": + \"Perform a mathematical calculation.\",\n \"name\": \"calculate\",\n + \ \"parameters\": {\n \"additionalProperties\": false,\n \"properties\": + {\n \"operation\": {\n \"type\": \"string\"\n },\n + \ \"a\": {\n \"type\": \"number\"\n },\n \"b\": + {\n \"type\": \"number\"\n }\n },\n \"required\": + [\n \"operation\",\n \"a\",\n \"b\"\n ],\n + \ \"type\": \"object\"\n },\n \"strict\": true\n }\n ],\n + \ \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": \"disabled\",\n + \ \"usage\": {\n \"input_tokens\": 52,\n \"input_tokens_details\": {\n + \ \"cached_tokens\": 0\n },\n \"output_tokens\": 22,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 74\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe53ff14964a-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:11 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a01cac96543d-YYZ + connection: + - keep-alive content-length: - - '1109' + - '2454' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:48 GMT openai-organization: - braintrust-data openai-processing-ms: - - '1504' + - '1081' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=DAav8Xmtu6BCb.m4qK4D7jCYX1FmtLvu4Yg66yPvG6o-1781551870.076982-1.0.1.1-NIUjqyyxb9AlG7Hdr97yO2trKQ7cMeho9.TnhDe5lWcHaiURrF3PGKK7bKuy5Z.EkR.Of4SrrI3pKlkMZi2TGmke90el.ldyoE8kAOCiOZMqUnJSiY3cjfArOJRMl17w; + - __cf_bm=3ra6xig9ZjzgXUdi1xmTpI_onO9vv0aYRA3JhcWHNGc-1782743387.6316085-1.0.1.1-G7TQPThGEjiF1nCxW.FQe9b6d9ssSbLepk8eZJe4b8IhkLColrVKQSVeIDDwrZuyRIFYBGgHzn2svTKj0iz6NOLF_wDgVYdg19AAPLg_qYRcZzONZs9_5HpwYLqIPCry; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:11 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:48 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -100,104 +120,129 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999990' + - '149999730' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_ba4acbdd74654c019ee6fb65fd02f3a0 + - ecf231bc-86ac-4571-b792-4cedc420f303 status: code: 200 message: OK - request: - body: '{"messages":[{"role":"user","content":"What is 127 multiplied by 49?"},{"role":"assistant","content":null,"tool_calls":[{"id":"call_MDiEnFZ4LsNkrDT7KIV9WL76","type":"function","function":{"name":"calculate","arguments":"{\"operation\":\"multiply\",\"a\":127,\"b\":49}"}}]},{"role":"tool","tool_call_id":"call_MDiEnFZ4LsNkrDT7KIV9WL76","content":"6223.0"}],"model":"gpt-4o-mini","max_completion_tokens":500,"stream":false,"tool_choice":"auto","tools":[{"type":"function","function":{"name":"calculate","description":"Perform - a mathematical calculation.","parameters":{"additionalProperties":false,"properties":{"operation":{"type":"string"},"a":{"type":"number"},"b":{"type":"number"}},"required":["operation","a","b"],"type":"object"},"strict":true}}]}' + body: '{"input":[{"role":"user","content":"What is 127 multiplied by 49?"},{"name":"calculate","arguments":"{\"operation\":\"multiply\",\"a\":127,\"b\":49}","call_id":"call_DyWjdmXMq6sspmEOVgidjVtT","type":"function_call"},{"type":"function_call_output","call_id":"call_DyWjdmXMq6sspmEOVgidjVtT","output":"6223.0"}],"max_output_tokens":500,"model":"gpt-4o-mini","stream":false,"tool_choice":"auto","tools":[{"name":"calculate","parameters":{"additionalProperties":false,"properties":{"operation":{"type":"string"},"a":{"type":"number"},"b":{"type":"number"}},"required":["operation","a","b"],"type":"object"},"type":"function","description":"Perform + a mathematical calculation.","strict":true}]}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '752' - Content-Type: + content-length: + - '688' + content-type: - application/json - Cookie: - - __cf_bm=DAav8Xmtu6BCb.m4qK4D7jCYX1FmtLvu4Yg66yPvG6o-1781551870.076982-1.0.1.1-NIUjqyyxb9AlG7Hdr97yO2trKQ7cMeho9.TnhDe5lWcHaiURrF3PGKK7bKuy5Z.EkR.Of4SrrI3pKlkMZi2TGmke90el.ldyoE8kAOCiOZMqUnJSiY3cjfArOJRMl17w - Host: + cookie: + - __cf_bm=3ra6xig9ZjzgXUdi1xmTpI_onO9vv0aYRA3JhcWHNGc-1782743387.6316085-1.0.1.1-G7TQPThGEjiF1nCxW.FQe9b6d9ssSbLepk8eZJe4b8IhkLColrVKQSVeIDDwrZuyRIFYBGgHzn2svTKj0iz6NOLF_wDgVYdg19AAPLg_qYRcZzONZs9_5HpwYLqIPCry + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JYLgz2csUcmJlsHyKgfY6C57NI\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551872,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"127 multiplied by 49 is 6,223.\",\n - \ \"refusal\": null,\n \"annotations\": []\n },\n \"logprobs\": - null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": - 90,\n \"completion_tokens\": 12,\n \"total_tokens\": 102,\n \"prompt_tokens_details\": - {\n \"cached_tokens\": 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_899b586ef5\"\n}\n" + string: "{\n \"id\": \"resp_0414b66ca0794c92006a42815ce1c4819cb019083a65a8ba5b\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743388,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743389,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 500,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_0414b66ca0794c92006a42815d798c819c90d85894fd442766\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"127 multiplied by + 49 equals 6,223.\"\n }\n ],\n \"role\": \"assistant\"\n }\n + \ ],\n \"parallel_tool_calls\": true,\n \"presence_penalty\": 0.0,\n \"previous_response_id\": + null,\n \"prompt_cache_key\": null,\n \"prompt_cache_retention\": \"in_memory\",\n + \ \"reasoning\": {\n \"context\": null,\n \"effort\": null,\n \"summary\": + null\n },\n \"safety_identifier\": null,\n \"service_tier\": \"default\",\n + \ \"store\": true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": + {\n \"type\": \"text\"\n },\n \"verbosity\": \"medium\"\n },\n + \ \"tool_choice\": \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n + \ \"input_tokens\": 0,\n \"input_tokens_details\": {\n \"image_tokens\": + 0,\n \"text_tokens\": 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [\n {\n \"type\": \"function\",\n \"description\": + \"Perform a mathematical calculation.\",\n \"name\": \"calculate\",\n + \ \"parameters\": {\n \"additionalProperties\": false,\n \"properties\": + {\n \"operation\": {\n \"type\": \"string\"\n },\n + \ \"a\": {\n \"type\": \"number\"\n },\n \"b\": + {\n \"type\": \"number\"\n }\n },\n \"required\": + [\n \"operation\",\n \"a\",\n \"b\"\n ],\n + \ \"type\": \"object\"\n },\n \"strict\": true\n }\n ],\n + \ \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": \"disabled\",\n + \ \"usage\": {\n \"input_tokens\": 82,\n \"input_tokens_details\": {\n + \ \"cached_tokens\": 0\n },\n \"output_tokens\": 13,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 95\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe5e68411185-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:12 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a0242aa5543d-YYZ + connection: + - keep-alive content-length: - - '838' + - '2520' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:49 GMT openai-organization: - braintrust-data openai-processing-ms: - - '753' + - '767' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' - x-openai-proxy-wasm: - - v0.1 + server: + - cloudflare + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -205,13 +250,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999987' + - '149999702' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_b007dfc1aa9f4e31be7cfd114d0db2da + - 5e21412f-b28b-48ac-a24e-76c409659706 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_tool_execution_tracing_does_not_depend_on_message_reconstruction.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_tool_execution_tracing_does_not_depend_on_message_reconstruction.yaml index bd6249c8..2d2f4158 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_tool_execution_tracing_does_not_depend_on_message_reconstruction.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_tool_execution_tracing_does_not_depend_on_message_reconstruction.yaml @@ -1,97 +1,114 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What''s the weather in Paris?"}],"model":"gpt-4o-mini","max_completion_tokens":200,"stream":false,"tool_choice":"auto","tools":[{"type":"function","function":{"name":"get_weather","description":"","parameters":{"additionalProperties":false,"properties":{"city":{"type":"string"}},"required":["city"],"type":"object"},"strict":true}}]}' + body: '{"input":[{"role":"user","content":"What''s the weather in Paris?"}],"max_output_tokens":200,"model":"gpt-4o-mini","stream":false,"tool_choice":"auto","tools":[{"name":"get_weather","parameters":{"additionalProperties":false,"properties":{"city":{"type":"string"}},"required":["city"],"type":"object"},"type":"function","description":null,"strict":true}]}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '372' - Content-Type: + content-length: + - '354' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JU674NRvfvG1bLsQZw1ycRsvgb\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551868,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": null,\n \"tool_calls\": [\n {\n - \ \"id\": \"call_Oa2fttcg46Jh3cBLhHuTyiNY\",\n \"type\": - \"function\",\n \"function\": {\n \"name\": \"get_weather\",\n - \ \"arguments\": \"{\\\"city\\\":\\\"Paris\\\"}\"\n }\n - \ }\n ],\n \"refusal\": null,\n \"annotations\": - []\n },\n \"logprobs\": null,\n \"finish_reason\": \"tool_calls\"\n - \ }\n ],\n \"usage\": {\n \"prompt_tokens\": 43,\n \"completion_tokens\": - 14,\n \"total_tokens\": 57,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_ef2d618cea\"\n}\n" + string: "{\n \"id\": \"resp_0458a00b6ce5cd65006a428159e9b8819d9a9877b65700e094\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743385,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743386,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 200,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"fc_0458a00b6ce5cd65006a42815a7ff8819d897488e533f20160\",\n + \ \"type\": \"function_call\",\n \"status\": \"completed\",\n \"arguments\": + \"{\\\"city\\\":\\\"Paris\\\"}\",\n \"call_id\": \"call_OmcWvd5LoQhKvXxTegLIr2ii\",\n + \ \"name\": \"get_weather\"\n }\n ],\n \"parallel_tool_calls\": true,\n + \ \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [\n {\n \"type\": \"function\",\n \"description\": + null,\n \"name\": \"get_weather\",\n \"parameters\": {\n \"additionalProperties\": + false,\n \"properties\": {\n \"city\": {\n \"type\": + \"string\"\n }\n },\n \"required\": [\n \"city\"\n + \ ],\n \"type\": \"object\"\n },\n \"strict\": true\n + \ }\n ],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 37,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 15,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 52\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe499a5a7769-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:08 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a0119fe590a8-YYZ + connection: + - keep-alive content-length: - - '1084' + - '2240' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:46 GMT openai-organization: - braintrust-data openai-processing-ms: - - '470' + - '784' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=OBpd5Q4EGdqjWmu_BkunBesoquH3glN__VozxllG4Zs-1781551868.4140763-1.0.1.1-g674vEq01fS6ijPynZ5YpQVctzl_5_0nb0psCbnoOUSuI9egeXEjhb8QUm6UmMy3DNUeAGYWW4vZcCCEfi5Bn9UmzGPItpRxjioiKK7iGd2B_JWzun6s9SX72BFW3DtZ; + - __cf_bm=ljvTD1Z_1IThMOt4zKaKxfH30Z4E9sVrhw8I6d23o5I-1782743385.8610375-1.0.1.1-rm1jXwX7WcdK2i3HQ1R9e_ebM4J9YjXsj2ql2ga0swcEYyIOwAXDP8brR25JlPrOb6zdAhUT9SsHl7wrF1_0fyyjSOLvFNWHND15IGHME_.r_ZsnrFqSqCxOays3Gg6V; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:01:08 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:46 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -99,104 +116,126 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999992' + - '149999745' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_038cd0aab23d42e9a6539e74f14df064 + - bde0bb0d-282b-49fd-b824-f869449f41c0 status: code: 200 message: OK - request: - body: '{"messages":[{"role":"user","content":"What''s the weather in Paris?"},{"role":"assistant","content":null,"tool_calls":[{"id":"call_Oa2fttcg46Jh3cBLhHuTyiNY","type":"function","function":{"name":"get_weather","arguments":"{\"city\":\"Paris\"}"}}]},{"role":"tool","tool_call_id":"call_Oa2fttcg46Jh3cBLhHuTyiNY","content":"It''s - sunny in Paris"}],"model":"gpt-4o-mini","max_completion_tokens":200,"stream":false,"tool_choice":"auto","tools":[{"type":"function","function":{"name":"get_weather","description":"","parameters":{"additionalProperties":false,"properties":{"city":{"type":"string"}},"required":["city"],"type":"object"},"strict":true}}]}' + body: '{"input":[{"role":"user","content":"What''s the weather in Paris?"},{"name":"get_weather","arguments":"{\"city\":\"Paris\"}","call_id":"call_OmcWvd5LoQhKvXxTegLIr2ii","type":"function_call"},{"type":"function_call_output","call_id":"call_OmcWvd5LoQhKvXxTegLIr2ii","output":"It''s + sunny in Paris"}],"max_output_tokens":200,"model":"gpt-4o-mini","stream":false,"tool_choice":"auto","tools":[{"name":"get_weather","parameters":{"additionalProperties":false,"properties":{"city":{"type":"string"}},"required":["city"],"type":"object"},"type":"function","description":null,"strict":true}]}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '644' - Content-Type: + content-length: + - '582' + content-type: - application/json - Cookie: - - __cf_bm=OBpd5Q4EGdqjWmu_BkunBesoquH3glN__VozxllG4Zs-1781551868.4140763-1.0.1.1-g674vEq01fS6ijPynZ5YpQVctzl_5_0nb0psCbnoOUSuI9egeXEjhb8QUm6UmMy3DNUeAGYWW4vZcCCEfi5Bn9UmzGPItpRxjioiKK7iGd2B_JWzun6s9SX72BFW3DtZ - Host: + cookie: + - __cf_bm=ljvTD1Z_1IThMOt4zKaKxfH30Z4E9sVrhw8I6d23o5I-1782743385.8610375-1.0.1.1-rm1jXwX7WcdK2i3HQ1R9e_ebM4J9YjXsj2ql2ga0swcEYyIOwAXDP8brR25JlPrOb6zdAhUT9SsHl7wrF1_0fyyjSOLvFNWHND15IGHME_.r_ZsnrFqSqCxOays3Gg6V + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7JV9zsoAfU4cY1jjbLi3x9xx6NV\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551869,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"The weather in Paris is sunny.\",\n - \ \"refusal\": null,\n \"annotations\": []\n },\n \"logprobs\": - null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": - 69,\n \"completion_tokens\": 8,\n \"total_tokens\": 77,\n \"prompt_tokens_details\": - {\n \"cached_tokens\": 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_ef2d618cea\"\n}\n" + string: "{\n \"id\": \"resp_061d76a003d97567006a42815adbc48191b259689c0a1705b9\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743386,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743387,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 200,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_061d76a003d97567006a42815b3da481919b1b87de4799ebcd\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"The weather in Paris + is sunny! Enjoy your day!\"\n }\n ],\n \"role\": \"assistant\"\n + \ }\n ],\n \"parallel_tool_calls\": true,\n \"presence_penalty\": 0.0,\n + \ \"previous_response_id\": null,\n \"prompt_cache_key\": null,\n \"prompt_cache_retention\": + \"in_memory\",\n \"reasoning\": {\n \"context\": null,\n \"effort\": + null,\n \"summary\": null\n },\n \"safety_identifier\": null,\n \"service_tier\": + \"default\",\n \"store\": true,\n \"temperature\": 1.0,\n \"text\": {\n + \ \"format\": {\n \"type\": \"text\"\n },\n \"verbosity\": \"medium\"\n + \ },\n \"tool_choice\": \"auto\",\n \"tool_usage\": {\n \"image_gen\": + {\n \"input_tokens\": 0,\n \"input_tokens_details\": {\n \"image_tokens\": + 0,\n \"text_tokens\": 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [\n {\n \"type\": \"function\",\n \"description\": + null,\n \"name\": \"get_weather\",\n \"parameters\": {\n \"additionalProperties\": + false,\n \"properties\": {\n \"city\": {\n \"type\": + \"string\"\n }\n },\n \"required\": [\n \"city\"\n + \ ],\n \"type\": \"object\"\n },\n \"strict\": true\n + \ }\n ],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 61,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 13,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 74\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fe4d7d03ac72-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:31:09 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a135a01709c390a8-YYZ + connection: + - keep-alive content-length: - - '836' + - '2343' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:47 GMT openai-organization: - braintrust-data openai-processing-ms: - - '790' + - '728' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' - x-openai-proxy-wasm: - - v0.1 + server: + - cloudflare + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -204,13 +243,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999985' + - '149999720' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_fd94eb80f4cd4e28af1391bafb51caef + - 7595c6a2-e775-4e91-8f93-c1631d8adf24 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_wrapper_agent_run_is_traced.yaml b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_wrapper_agent_run_is_traced.yaml index d3512ca9..24eb8a19 100644 --- a/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_wrapper_agent_run_is_traced.yaml +++ b/py/src/braintrust/integrations/pydantic_ai/cassettes/latest/test_wrapper_agent_run_is_traced.yaml @@ -1,94 +1,110 @@ interactions: - request: - body: '{"messages":[{"role":"user","content":"What is 2+2? Answer with just the - number."}],"model":"gpt-4o-mini","max_completion_tokens":50,"stream":false}' + body: '{"input":[{"role":"user","content":"What is 2+2? Answer with just the number."}],"max_output_tokens":50,"model":"gpt-4o-mini","stream":false}' headers: - Accept: + accept: - application/json - Accept-Encoding: + accept-encoding: - gzip, deflate - Connection: + connection: - keep-alive - Content-Length: - - '148' - Content-Type: + content-length: + - '141' + content-type: - application/json - Host: + host: - api.openai.com - User-Agent: - - pydantic-ai/1.107.0 - X-Stainless-Arch: + user-agent: + - pydantic-ai/2.0.0 + x-stainless-arch: - arm64 - X-Stainless-Async: + x-stainless-async: - async:asyncio - X-Stainless-Lang: + x-stainless-lang: - python - X-Stainless-OS: + x-stainless-os: - MacOS - X-Stainless-Package-Version: - - 2.41.1 - X-Stainless-Runtime: - - CPython - X-Stainless-Runtime-Version: - - 3.14.3 + x-stainless-package-version: + - 2.44.0 x-stainless-read-timeout: - '600' x-stainless-retry-count: - '0' + x-stainless-runtime: + - CPython + x-stainless-runtime-version: + - 3.14.3 method: POST - uri: https://api.openai.com/v1/chat/completions + uri: https://api.openai.com/v1/responses response: body: - string: "{\n \"id\": \"chatcmpl-Dr7IxFsroS7G8Pu99gFw6hoYxNKWg\",\n \"object\": - \"chat.completion\",\n \"created\": 1781551835,\n \"model\": \"gpt-4o-mini-2024-07-18\",\n - \ \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": - \"assistant\",\n \"content\": \"4\",\n \"refusal\": null,\n - \ \"annotations\": []\n },\n \"logprobs\": null,\n \"finish_reason\": - \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 20,\n \"completion_tokens\": - 1,\n \"total_tokens\": 21,\n \"prompt_tokens_details\": {\n \"cached_tokens\": - 0,\n \"audio_tokens\": 0\n },\n \"completion_tokens_details\": - {\n \"reasoning_tokens\": 0,\n \"audio_tokens\": 0,\n \"accepted_prediction_tokens\": - 0,\n \"rejected_prediction_tokens\": 0\n }\n },\n \"service_tier\": - \"default\",\n \"system_fingerprint\": \"fp_d07f82f293\"\n}\n" + string: "{\n \"id\": \"resp_03009bdf536aeffc006a42812e787c81a1b4513d4109801a9e\",\n + \ \"object\": \"response\",\n \"created_at\": 1782743342,\n \"status\": + \"completed\",\n \"background\": false,\n \"billing\": {\n \"payer\": + \"developer\"\n },\n \"completed_at\": 1782743343,\n \"error\": null,\n + \ \"frequency_penalty\": 0.0,\n \"incomplete_details\": null,\n \"instructions\": + null,\n \"max_output_tokens\": 50,\n \"max_tool_calls\": null,\n \"model\": + \"gpt-4o-mini-2024-07-18\",\n \"moderation\": null,\n \"output\": [\n {\n + \ \"id\": \"msg_03009bdf536aeffc006a42812f0a4881a184bd851318c351f9\",\n + \ \"type\": \"message\",\n \"status\": \"completed\",\n \"content\": + [\n {\n \"type\": \"output_text\",\n \"annotations\": + [],\n \"logprobs\": [],\n \"text\": \"4\"\n }\n ],\n + \ \"role\": \"assistant\"\n }\n ],\n \"parallel_tool_calls\": true,\n + \ \"presence_penalty\": 0.0,\n \"previous_response_id\": null,\n \"prompt_cache_key\": + null,\n \"prompt_cache_retention\": \"in_memory\",\n \"reasoning\": {\n + \ \"context\": null,\n \"effort\": null,\n \"summary\": null\n },\n + \ \"safety_identifier\": null,\n \"service_tier\": \"default\",\n \"store\": + true,\n \"temperature\": 1.0,\n \"text\": {\n \"format\": {\n \"type\": + \"text\"\n },\n \"verbosity\": \"medium\"\n },\n \"tool_choice\": + \"auto\",\n \"tool_usage\": {\n \"image_gen\": {\n \"input_tokens\": + 0,\n \"input_tokens_details\": {\n \"image_tokens\": 0,\n \"text_tokens\": + 0\n },\n \"output_tokens\": 0,\n \"output_tokens_details\": + {\n \"image_tokens\": 0,\n \"text_tokens\": 0\n },\n \"total_tokens\": + 0\n },\n \"web_search\": {\n \"num_requests\": 0\n }\n },\n + \ \"tools\": [],\n \"top_logprobs\": 0,\n \"top_p\": 1.0,\n \"truncation\": + \"disabled\",\n \"usage\": {\n \"input_tokens\": 20,\n \"input_tokens_details\": + {\n \"cached_tokens\": 0\n },\n \"output_tokens\": 2,\n \"output_tokens_details\": + {\n \"reasoning_tokens\": 0\n },\n \"total_tokens\": 22\n },\n + \ \"user\": null,\n \"metadata\": {}\n}" headers: - Access-Control-Expose-Headers: + access-control-expose-headers: + - X-Request-ID + - CF-Ray - CF-Ray - CF-Cache-Status: - - DYNAMIC - CF-Ray: - - a0c3fd7c498b4f09-YYZ - Connection: - - keep-alive - Content-Type: - - application/json - Date: - - Mon, 15 Jun 2026 19:30:36 GMT - Server: - - cloudflare - Strict-Transport-Security: - - max-age=31536000; includeSubDomains; preload - Transfer-Encoding: - - chunked - X-Content-Type-Options: - - nosniff alt-svc: - h3=":443"; ma=86400 + cf-cache-status: + - DYNAMIC + cf-ray: + - a1359f01fd02ebb5-YYZ + connection: + - keep-alive content-length: - - '807' + - '1937' + content-type: + - application/json + date: + - Mon, 29 Jun 2026 14:29:03 GMT openai-organization: - braintrust-data openai-processing-ms: - - '404' + - '855' openai-project: - proj_vsCSXafhhByzWOThMrJcZiw9 openai-version: - '2020-10-01' + server: + - cloudflare set-cookie: - - __cf_bm=irKogOjSDSgr3wj2dHksowUu2mYd31Z9vjPWdMULPuM-1781551835.5651958-1.0.1.1-aIAK3zzW_N9CYNRR.FY3lz7CsI2cOaBks5omaNLm0efhxQQ03irbqu9NvLsOSXliF35ROb8pMswTaDnjK8cbVmwI4J09s_X_g6zaeTRfZESzrcVQPA08QZo3vBDawYW5; + - __cf_bm=aVSRabADxYoDCh.3X_FGRa_vOC3UmUH0H4GKBMRiiqE-1782743342.394258-1.0.1.1-Q0.vl5KBwYuQBvexPM92duUuG.Gm5gNJkxNsezKaBNORdSzYE3ZLhne0bPZ315TQQPkWvPFfc4RAF9w3qfNbOzshwtg_TQLasXfThuvN6MGjmYaFNU9wMW7bCSDXTTM5; HttpOnly; SameSite=None; Secure; Path=/; Domain=api.openai.com; Expires=Mon, - 15 Jun 2026 20:00:36 GMT - x-openai-proxy-wasm: - - v0.1 + 29 Jun 2026 14:59:03 GMT + strict-transport-security: + - max-age=31536000; includeSubDomains; preload + transfer-encoding: + - chunked + x-content-type-options: + - nosniff x-ratelimit-limit-requests: - '30000' x-ratelimit-limit-tokens: @@ -96,13 +112,13 @@ interactions: x-ratelimit-remaining-requests: - '29999' x-ratelimit-remaining-tokens: - - '149999985' + - '149999960' x-ratelimit-reset-requests: - 2ms x-ratelimit-reset-tokens: - 0s x-request-id: - - req_b2542daf1f3a46c7b21ca560217ebb7e + - 262add11-10c9-43d3-ade5-6ea0f75a4744 status: code: 200 message: OK diff --git a/py/src/braintrust/integrations/pydantic_ai/patchers.py b/py/src/braintrust/integrations/pydantic_ai/patchers.py index 06f67073..7a00208e 100644 --- a/py/src/braintrust/integrations/pydantic_ai/patchers.py +++ b/py/src/braintrust/integrations/pydantic_ai/patchers.py @@ -187,6 +187,14 @@ class ModelClassesPatcher(ClassScanPatcher): patch_class = staticmethod(_wrap_concrete_model_class) +def _wrap_model_class_no_warning(model_class: Any) -> Any: + if ModelClassesPatcher.has_patch_marker(model_class): + return model_class + _wrap_concrete_model_class(model_class) + ModelClassesPatcher.mark_patched(model_class) + return model_class + + def wrap_model_class(model_class: Any) -> Any: warnings.warn( "wrap_model_class() is deprecated and no longer needed for normal setup. " @@ -194,11 +202,7 @@ def wrap_model_class(model_class: Any) -> Any: DeprecationWarning, stacklevel=2, ) - if ModelClassesPatcher.has_patch_marker(model_class): - return model_class - _wrap_concrete_model_class(model_class) - ModelClassesPatcher.mark_patched(model_class) - return model_class + return _wrap_model_class_no_warning(model_class) def wrap_model_classes() -> bool: diff --git a/py/src/braintrust/integrations/pydantic_ai/test_pydantic_ai_integration.py b/py/src/braintrust/integrations/pydantic_ai/test_pydantic_ai_integration.py index 21bb7268..daac8bd3 100644 --- a/py/src/braintrust/integrations/pydantic_ai/test_pydantic_ai_integration.py +++ b/py/src/braintrust/integrations/pydantic_ai/test_pydantic_ai_integration.py @@ -1214,10 +1214,19 @@ async def test_agent_run_stream_events(memory_logger): start = time.time() event_count = 0 events = [] - # Consume all events - async for event in agent.run_stream_events("What is 5+5?"): - event_count += 1 - events.append(event) + # Consume all events. Pydantic AI <2 returned a directly async-iterable + # object; v2 returns an async context manager whose entered value is + # async-iterable. Exercise the real provider-backed path for both shapes. + event_stream = agent.run_stream_events("What is 5+5?") + if hasattr(event_stream, "__aenter__"): + async with event_stream as entered_event_stream: + async for event in entered_event_stream: + event_count += 1 + events.append(event) + else: + async for event in event_stream: + event_count += 1 + events.append(event) end = time.time() # Verify we got events @@ -1247,6 +1256,27 @@ async def test_agent_run_stream_events(memory_logger): ) +@pytest.mark.vcr +@pytest.mark.asyncio +async def test_agent_run_stream_events_direct_async_for_compatibility(memory_logger): + """The Braintrust wrapper keeps the pre-v2 direct async-for usage working.""" + assert not memory_logger.pop() + + agent = Agent(MODEL, model_settings=ModelSettings(max_tokens=50)) + + event_count = 0 + async for event in agent.run_stream_events("What is 3+7?"): + event_count += 1 + assert event is not None + + assert event_count > 0 + + spans = memory_logger.pop() + agent_span = next((s for s in spans if "agent_run_stream_events" in s["span_attributes"]["name"]), None) + assert agent_span is not None, "agent_run_stream_events span not found" + assert agent_span["metrics"]["event_count"] == event_count + + @pytest.mark.vcr def test_direct_model_request_stream_sync(memory_logger, direct): """Test direct API model_request_stream_sync() - verifies time_to_first_token.""" @@ -1272,6 +1302,8 @@ def test_direct_model_request_stream_sync(memory_logger, direct): assert span["span_attributes"]["type"] == SpanTypeAttribute.TASK assert span["span_attributes"]["name"] == "model_request_stream_sync" assert span["metadata"]["model"] == "gpt-4o-mini" + assert "output" in span + assert "parts" in span["output"] _assert_metrics_are_valid(span["metrics"], start, end) # CRITICAL: Verify time_to_first_token is captured in sync direct streaming @@ -2262,6 +2294,116 @@ class name (e.g., 'OpenAIChatModel') rather than str(instance) which _assert_metrics_are_valid(chat_span["metrics"], start, end) +@pytest.mark.asyncio +async def test_agent_stream_events_enter_error_cleans_up(memory_logger): + from braintrust.integrations.pydantic_ai.tracing import _AgentStreamEventsWrapper, _tool_trace_state + + class FailingEventSource: + async def __aenter__(self): + raise RuntimeError("enter boom") + + assert not memory_logger.pop() + + with pytest.raises(RuntimeError, match="enter boom"): + async with _AgentStreamEventsWrapper(FailingEventSource(), "agent_run_stream_events", {}, {}): + pass + + assert _tool_trace_state.get() is None + + +@pytest.mark.asyncio +async def test_agent_stream_events_iteration_error_is_logged(memory_logger): + from braintrust.integrations.pydantic_ai.tracing import _AgentStreamEventsWrapper + + class FailingEventStream: + def __aiter__(self): + return self + + async def __anext__(self): + raise RuntimeError("iterate boom") + + assert not memory_logger.pop() + + async def consume_events(): + async for _event in _AgentStreamEventsWrapper(FailingEventStream(), "agent_run_stream_events", {}, {}): + pass + + with pytest.raises(RuntimeError, match="iterate boom"): + await consume_events() + + spans = memory_logger.pop() + assert len(spans) == 1 + assert "iterate boom" in str(spans[0].get("error")) + + +def test_wrap_model_instance_does_not_emit_public_deprecation_warning(): + import warnings + + from braintrust.integrations.pydantic_ai.tracing import _wrap_model_instance + + class DummyModel: + async def request(self, *args, **kwargs): + return None + + def request_stream(self, *args, **kwargs): + return iter(()) + + with warnings.catch_warnings(record=True) as caught: + warnings.simplefilter("always", DeprecationWarning) + assert _wrap_model_instance(DummyModel()) is not None + + assert not [warning for warning in caught if issubclass(warning.category, DeprecationWarning)] + + +def test_v2_message_and_response_fields_are_shaped(): + from types import SimpleNamespace + + from braintrust.integrations.pydantic_ai.tracing import _shape_message, _shape_model_response + + message = SimpleNamespace(kind="request", state="complete", parts=["hello"]) + assert _shape_message(message)["state"] == "complete" + + response = SimpleNamespace( + kind="response", + state="complete", + model_name="gpt-4o-mini", + provider_name="openai", + provider_url="https://api.openai.com/v1/responses", + finish_reason="stop", + run_id="run-123", + conversation_id="conv-123", + parts=["done"], + ) + + shaped = _shape_model_response(response) + assert shaped["state"] == "complete" + assert shaped["provider_name"] == "openai" + assert shaped["provider_url"] == "https://api.openai.com/v1/responses" + assert shaped["finish_reason"] == "stop" + assert shaped["run_id"] == "run-123" + assert shaped["conversation_id"] == "conv-123" + + +def test_v2_model_provider_inference(): + from braintrust.integrations.pydantic_ai.tracing import _extract_model_info_from_model_instance + + GoogleModel = type("GoogleModel", (), {}) + google_model = GoogleModel() + google_model.model_name = "gemini-2.0-flash" + + GoogleCloud = type("GoogleCloud", (), {}) + google_cloud_model = GoogleCloud() + google_cloud_model.model_name = "gemini-2.0-flash" + + XaiModel = type("XaiModel", (), {}) + xai_model = XaiModel() + xai_model.model_name = "grok-2" + + assert _extract_model_info_from_model_instance(google_model) == ("gemini-2.0-flash", "google") + assert _extract_model_info_from_model_instance(google_cloud_model) == ("gemini-2.0-flash", "google-cloud") + assert _extract_model_info_from_model_instance(xai_model) == ("grok-2", "xai") + + def test_model_classes_patcher_marker_check_is_mro_safe(): from braintrust.integrations.pydantic_ai.patchers import ModelClassesPatcher @@ -2939,7 +3081,7 @@ async def test_agent_with_short_max_tokens(memory_logger): agent = Agent(MODEL) start = time.time() - result = await agent.run("What is AI?", model_settings=ModelSettings(max_tokens=5)) + result = await agent.run("What is AI?", model_settings=ModelSettings(max_tokens=16)) end = time.time() # Truncated responses are still valid output; no exception should be raised. @@ -2961,7 +3103,7 @@ async def test_agent_with_short_max_tokens(memory_logger): # max_tokens passed to run() → in input.model_settings assert "model_settings" in agent_span["input"] - assert agent_span["input"]["model_settings"].get("max_tokens") == 5 + assert agent_span["input"]["model_settings"].get("max_tokens") == 16 assert agent_span["output"] _assert_metrics_are_valid(agent_span["metrics"], start, end) diff --git a/py/src/braintrust/integrations/pydantic_ai/tracing.py b/py/src/braintrust/integrations/pydantic_ai/tracing.py index 1f131457..c14f1f91 100644 --- a/py/src/braintrust/integrations/pydantic_ai/tracing.py +++ b/py/src/braintrust/integrations/pydantic_ai/tracing.py @@ -30,9 +30,9 @@ def _wrap_model_instance(model: Any) -> Any: if model is None: return model - from .patchers import wrap_model_class # pylint: disable=import-outside-toplevel + from .patchers import _wrap_model_class_no_warning # pylint: disable=import-outside-toplevel - wrap_model_class(type(model)) + _wrap_model_class_no_warning(type(model)) return model @@ -177,47 +177,18 @@ def _agent_run_stream_sync_wrapper(wrapped: Any, instance: Any, args: Any, kwarg raise -async def _agent_run_stream_events_wrapper(wrapped: Any, instance: Any, args: Any, kwargs: Any): +def _agent_run_stream_events_wrapper(wrapped: Any, instance: Any, args: Any, kwargs: Any): input_data, metadata = _build_agent_input_and_metadata(args, kwargs, instance) agent_name = instance.name if hasattr(instance, "name") else None span_name = f"agent_run_stream_events [{agent_name}]" if agent_name else "agent_run_stream_events" - with start_span( - name=span_name, - type=SpanTypeAttribute.TASK, - input=input_data if input_data else None, - metadata=metadata, - ) as agent_span: - tool_trace_token = _start_tool_trace_capture() - try: - start_time = time.time() - event_count = 0 - final_result = None - - async for event in wrapped(*args, **kwargs): - event_count += 1 - if hasattr(event, "output"): - final_result = event - yield event - - end_time = time.time() - - if final_result: - _maybe_create_tool_spans_from_messages(final_result) - - output = None - metrics: dict[str, float] = { - **_wrapper_span_metrics(start_time, end_time), - "event_count": event_count, - } - - if final_result: - output = _shape_result_output(final_result) - - agent_span.log(output=output, metrics=metrics) - finally: - _reset_tool_trace_capture(tool_trace_token) + return _AgentStreamEventsWrapper( + wrapped(*args, **kwargs), + span_name, + input_data, + metadata, + ) def _create_direct_model_request_wrapper(): @@ -430,6 +401,140 @@ def model_request_stream_wrapper(wrapped: Any, instance: Any, args: Any, kwargs: return model_class +class _AgentStreamEventsWrapper(AbstractAsyncContextManager): + """Wrapper for agent.run_stream_events() supporting pre-v2 and v2 stream shapes.""" + + def __init__(self, event_source: Any, span_name: str, input_data: Any, metadata: Any): + self.event_source = event_source + self.span_name = span_name + self.input_data = input_data + self.metadata = metadata + self.span_cm = None + self.agent_span = None + self.start_time = None + self._enter_task = None + self._tool_trace_token = None + self._entered_event_source = None + self._event_count = 0 + self._final_result = None + + def __aiter__(self): + async def _iterate(): + async with self as event_stream: + async for event in event_stream: + yield event + + return _iterate() + + async def __aenter__(self): + self._enter_task = asyncio.current_task() + self.span_cm = start_span( + name=self.span_name, + type=SpanTypeAttribute.TASK, + input=self.input_data if self.input_data else None, + metadata=self.metadata, + ) + self.agent_span = self.span_cm.__enter__() + self._tool_trace_token = _start_tool_trace_capture() + self.start_time = time.time() + + try: + if hasattr(self.event_source, "__aenter__"): + self._entered_event_source = await self.event_source.__aenter__() + else: + self._entered_event_source = self.event_source + except BaseException: + if self._tool_trace_token is not None: + _reset_tool_trace_capture(self._tool_trace_token) + self._tool_trace_token = None + if self.span_cm: + self.span_cm.__exit__(*sys.exc_info()) + raise + + return _AgentStreamEventsIteratorProxy(self._entered_event_source, self) + + async def __aexit__(self, exc_type, exc_val, exc_tb): + suppress = False + span_exit_args = (exc_type, exc_val, exc_tb) + try: + if hasattr(self.event_source, "__aexit__"): + suppress = bool(await self.event_source.__aexit__(exc_type, exc_val, exc_tb)) + if suppress: + span_exit_args = (None, None, None) + except BaseException: + span_exit_args = sys.exc_info() + raise + finally: + if self.agent_span and self.start_time is not None: + end_time = time.time() + + if self._final_result: + _maybe_create_tool_spans_from_messages(self._final_result) + + metrics: dict[str, float] = { + **_wrapper_span_metrics(self.start_time, end_time), + "event_count": self._event_count, + } + output = _shape_result_output(self._final_result) if self._final_result else None + self.agent_span.log(output=output, metrics=metrics) + + if self.span_cm: + if asyncio.current_task() is self._enter_task: + self.span_cm.__exit__(*span_exit_args) + else: + self.span_cm.end() + if self._tool_trace_token is not None: + _reset_tool_trace_capture(self._tool_trace_token) + self._tool_trace_token = None + + return suppress + + +class _AgentStreamEventsIteratorProxy: + """Proxy for stream events that counts events and captures final output.""" + + def __init__(self, event_stream: Any, wrapper: _AgentStreamEventsWrapper): + self._event_stream = event_stream + self._wrapper = wrapper + self._iterator = None + + def __getattr__(self, name: str): + return getattr(self._event_stream, name) + + def __aiter__(self): + self._iterator = _async_iterator(self._event_stream) + return self + + async def __anext__(self): + if self._iterator is None: + self._iterator = _async_iterator(self._event_stream) + + event = await self._iterator.__anext__() + self._wrapper._event_count += 1 + if hasattr(event, "output"): + self._wrapper._final_result = event + return event + + +def _async_iterator(value: Any) -> Any: + return value.__aiter__() if hasattr(value, "__aiter__") else value + + +def _extract_stream_response(stream: Any) -> Any: + response = getattr(stream, "response", _MISSING) + if response is not _MISSING and response is not None: + return response + + get_response = getattr(stream, "get", None) + if callable(get_response): + return get_response() + + if response is not _MISSING: + return response + + raise AttributeError("stream does not expose response or get()") + + class _AgentStreamWrapper(AbstractAsyncContextManager): """Wrapper for agent.run_stream() that adds tracing while passing through the stream result.""" @@ -575,7 +680,7 @@ async def __aexit__(self, exc_type, exc_val, exc_tb): end_time = time.time() try: - final_response = self.stream.get() + final_response = _extract_stream_response(self.stream) output = _shape_model_response(final_response) if self.span_type == SpanTypeAttribute.LLM: metrics = _extract_response_metrics( @@ -746,7 +851,7 @@ def __exit__(self, exc_type, exc_val, exc_tb): end_time = time.time() try: - final_response = self.stream.get() + final_response = _extract_stream_response(self.stream) output = _shape_model_response(final_response) self.span_cm.log( output=output, @@ -916,9 +1021,22 @@ def _msg_timestamp(msg: Any) -> float | None: _MISSING = object() -_MESSAGE_FIELDS = ("kind", "role", "timestamp") +_MESSAGE_FIELDS = ("kind", "role", "timestamp", "state") _PART_FIELDS = ("kind", "part_kind", "tool_name", "tool_call_id") -_RESPONSE_FIELDS = ("kind", "model_name", "timestamp", "usage", "provider_response_id", "provider_details") +_RESPONSE_FIELDS = ( + "kind", + "model_name", + "timestamp", + "usage", + "provider_response_id", + "provider_details", + "state", + "provider_name", + "provider_url", + "finish_reason", + "run_id", + "conversation_id", +) def _shape_user_prompt(user_prompt: Any) -> Any: @@ -1080,6 +1198,10 @@ def _extract_model_info_from_model_instance(model: Any) -> tuple[str | None, str provider = "openai" elif "Anthropic" in class_name: provider = "anthropic" + elif "GoogleCloud" in class_name: + provider = "google-cloud" + elif "Google" in class_name: + provider = "google" elif "Gemini" in class_name: provider = "gemini" elif "Groq" in class_name: @@ -1088,6 +1210,8 @@ def _extract_model_info_from_model_instance(model: Any) -> tuple[str | None, str provider = "mistral" elif "VertexAI" in class_name: provider = "vertexai" + elif "Xai" in class_name or "XAI" in class_name: + provider = "xai" return model_name, provider diff --git a/py/uv.lock b/py/uv.lock index b08ea2f6..b87faf43 100644 --- a/py/uv.lock +++ b/py/uv.lock @@ -24,18 +24,6 @@ conflicts = [[ { package = "braintrust", group = "test-pydantic-ai-logfire" }, ]] -[[package]] -name = "ag-ui-protocol" -version = "0.1.19" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "pydantic" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/a7/10/4ad299267a7d04b89935aa99eef62979758fcf95aee9f8bb5d70c35b1be1/ag_ui_protocol-0.1.19.tar.gz", hash = "sha256:43c27f60d41712dcad0e9e0a203cbdf1c8e248b22417374c5c68321c448af4ea", size = 10720, upload-time = "2026-06-02T17:26:15.627Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/4c/0a/bcad8116eb058e4b4a305e3fc37ebd7efc879deeb86b854f1c5b8b6e97dd/ag_ui_protocol-0.1.19-py3-none-any.whl", hash = "sha256:898843b1410d378824da0c6a776486288b9c5828689d0bf563118868e37f390f", size = 13490, upload-time = "2026-06-02T17:26:16.313Z" }, -] - [[package]] name = "agentscope" version = "1.0.21" @@ -54,10 +42,10 @@ dependencies = [ { name = "numpy", version = "2.4.6", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version == '3.11.*' and extra == 'group-10-braintrust-lint') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "numpy", version = "2.5.0", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.12' and extra == 'group-10-braintrust-lint') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "openai", version = "2.32.0", source = { registry = "https://pypi.org/simple" } }, - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, - { name = "opentelemetry-exporter-otlp", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, - { name = "opentelemetry-sdk", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, - { name = "opentelemetry-semantic-conventions", version = "0.60b1", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-exporter-otlp", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-sdk", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-semantic-conventions", version = "0.61b0", source = { registry = "https://pypi.org/simple" } }, { name = "python-datauri" }, { name = "python-frontmatter" }, { name = "python-socketio" }, @@ -80,7 +68,7 @@ dependencies = [ { name = "gitpython" }, { name = "h11" }, { name = "httpx", extra = ["http2"], marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "packaging", version = "25.0", source = { registry = "https://pypi.org/simple" } }, + { name = "packaging" }, { name = "pydantic" }, { name = "pydantic-settings" }, { name = "python-dotenv" }, @@ -463,7 +451,7 @@ version = "0.7.5" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "jsonref" }, - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, { name = "pillow" }, { name = "protobuf", version = "5.29.6", source = { registry = "https://pypi.org/simple" } }, { name = "pydantic" }, @@ -619,8 +607,7 @@ dependencies = [ { name = "exceptiongroup" }, { name = "gitpython" }, { name = "jsonschema" }, - { name = "packaging", version = "25.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "packaging", version = "26.2", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-livekit-agents' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or extra != 'group-10-braintrust-lint'" }, + { name = "packaging" }, { name = "python-slugify" }, { name = "requests" }, { name = "sseclient-py" }, @@ -635,14 +622,11 @@ all = [ { name = "openai-agents", version = "0.2.9", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-litellm' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands')" }, { name = "openai-agents", version = "0.17.3", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra != 'group-10-braintrust-test-litellm' or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands')" }, { name = "opentelemetry-api", version = "1.38.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "opentelemetry-exporter-otlp-proto-http", version = "1.38.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-exporter-otlp-proto-http", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-exporter-otlp-proto-http", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, + { name = "opentelemetry-exporter-otlp-proto-http", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "opentelemetry-sdk", version = "1.38.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-sdk", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-sdk", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, + { name = "opentelemetry-sdk", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "orjson", version = "3.11.8", source = { registry = "https://pypi.org/simple" }, marker = "(platform_python_implementation != 'PyPy' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "orjson", version = "3.11.9", source = { registry = "https://pypi.org/simple" }, marker = "(platform_python_implementation != 'PyPy' and extra == 'group-10-braintrust-lint') or (platform_python_implementation != 'PyPy' and extra == 'group-10-braintrust-test-agentscope') or (platform_python_implementation != 'PyPy' and extra == 'group-10-braintrust-test-agno') or (platform_python_implementation != 'PyPy' and extra == 'group-10-braintrust-test-crewai') or (platform_python_implementation != 'PyPy' and extra == 'group-10-braintrust-test-langchain') or (platform_python_implementation != 'PyPy' and extra != 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "python-dotenv" }, @@ -664,14 +648,11 @@ openai-agents = [ ] otel = [ { name = "opentelemetry-api", version = "1.38.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "opentelemetry-exporter-otlp-proto-http", version = "1.38.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-exporter-otlp-proto-http", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-exporter-otlp-proto-http", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, + { name = "opentelemetry-exporter-otlp-proto-http", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "opentelemetry-sdk", version = "1.38.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-sdk", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-sdk", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, + { name = "opentelemetry-sdk", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, ] performance = [ { name = "orjson", version = "3.11.8", source = { registry = "https://pypi.org/simple" }, marker = "(platform_python_implementation != 'PyPy' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, @@ -708,7 +689,7 @@ lint = [ { name = "dspy" }, { name = "google-adk" }, { name = "google-genai" }, - { name = "huggingface-hub", version = "1.18.0", source = { registry = "https://pypi.org/simple" } }, + { name = "huggingface-hub" }, { name = "instructor" }, { name = "langchain-anthropic" }, { name = "langchain-core" }, @@ -924,7 +905,7 @@ lint = [ { name = "openai-agents" }, { name = "openrouter" }, { name = "opentelemetry-instrumentation-openai", specifier = "==0.59.1" }, - { name = "pydantic-ai", specifier = ">=1.99.0,<2" }, + { name = "pydantic-ai" }, { name = "pylint", specifier = "==4.0.5" }, { name = "pyperf", specifier = "==2.10.0" }, { name = "strands-agents" }, @@ -1481,23 +1462,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/aa/50/a9caea39ad19c431c1a3f8a31114df65b260cdfe67786b6c7e7c040c4c44/cryptography-49.0.0-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:be9fcb48a55f023493482827d4f459bd263cc20efde64f204b97c123201850c6", size = 3783731, upload-time = "2026-06-12T20:02:43.319Z" }, ] -[[package]] -name = "cyclopts" -version = "4.20.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "attrs" }, - { name = "docstring-parser" }, - { name = "rich", version = "14.3.4", source = { registry = "https://pypi.org/simple" } }, - { name = "rich-rst" }, - { name = "tomli", marker = "python_full_version < '3.11'" }, - { name = "typing-extensions", marker = "python_full_version < '3.11'" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/74/89/f4c775c651d91f9cd8149f70baec94c902a34e5f17a7a67881881bcfb244/cyclopts-4.20.0.tar.gz", hash = "sha256:1d819de2b12dc6b1c9f17ce0f4937d82922c0b83ac846eb4b3289c9c9f321c9f", size = 190236, upload-time = "2026-06-29T15:04:42.253Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/dd/d4/7243bc65d33c5ff5150569c42c8c1154aadae20b25638afe35f7f568489c/cyclopts-4.20.0-py3-none-any.whl", hash = "sha256:0b4337e9c11303d86b33d3f37c629dc01638f84591681e0e5611286bdd507646", size = 229383, upload-time = "2026-06-29T15:04:40.621Z" }, -] - [[package]] name = "dashscope" version = "1.26.0" @@ -1538,8 +1502,7 @@ dependencies = [ { name = "bytecode", version = "0.18.1", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.11' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "envier" }, { name = "opentelemetry-api", version = "1.38.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "wrapt" }, ] sdist = { url = "https://files.pythonhosted.org/packages/30/e4/f8d6e17bddd0fd2635de5ff53fdf01dbe3ce7d4c48ee5b6bb600a8fa60bd/ddtrace-4.1.0.tar.gz", hash = "sha256:7e51ba829eeba1b0758086f4c6dd7b00c4d7b5e104f2dc3b5b48e2c9b6413395", size = 6997297, upload-time = "2025-12-19T14:15:37.565Z" } @@ -1595,8 +1558,7 @@ name = "dependency-groups" version = "1.3.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "packaging", version = "25.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "packaging", version = "26.2", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-livekit-agents' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or extra != 'group-10-braintrust-lint'" }, + { name = "packaging" }, { name = "tomli", marker = "python_full_version < '3.11' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/62/55/f054de99871e7beb81935dea8a10b90cd5ce42122b1c3081d5282fdb3621/dependency_groups-1.3.1.tar.gz", hash = "sha256:78078301090517fd938c19f64a53ce98c32834dfe0dee6b88004a569a6adfefd", size = 10093, upload-time = "2025-05-02T00:34:29.452Z" } @@ -1830,18 +1792,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/32/f1/f21bd5319113e89ceceed2df840df21e9c5150d181db74b6ba80400f9f48/fastavro-1.12.2-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:afede7324822800e4f90e96b9514188a237a60f35e8e7a10b2129c10c78f6e4d", size = 3356664, upload-time = "2026-04-24T14:37:34.231Z" }, ] -[[package]] -name = "fastmcp" -version = "3.4.2" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "fastmcp-slim", extra = ["client", "server"], marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/29/18/46beaec18c9f86a599ae3f9cdf6677dd6b50240cfd844d18233710b47f13/fastmcp-3.4.2.tar.gz", hash = "sha256:b468722946fc467c3796a6572f7a14d93d48c014cf8fea12910245220cbbe4e1", size = 28756849, upload-time = "2026-06-06T01:30:35.694Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/58/4d/8b1ba42251160e11ca34686344572121432c23a082d56ef6bbdec5888fc1/fastmcp-3.4.2-py3-none-any.whl", hash = "sha256:c87a62b029f0c5400ada85f683629345d2466c39169f0cb853e487b2f7308c08", size = 8018, upload-time = "2026-06-06T01:30:38.118Z" }, -] - [[package]] name = "fastmcp-slim" version = "3.4.2" @@ -1865,33 +1815,10 @@ client = [ { name = "exceptiongroup" }, { name = "httpx" }, { name = "mcp" }, - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, { name = "py-key-value-aio", extra = ["filetree", "keyring", "memory"], marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "starlette" }, ] -server = [ - { name = "authlib" }, - { name = "cyclopts" }, - { name = "exceptiongroup" }, - { name = "griffelib" }, - { name = "httpx" }, - { name = "joserfc" }, - { name = "jsonref" }, - { name = "jsonschema-path" }, - { name = "mcp" }, - { name = "openapi-pydantic" }, - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, - { name = "packaging", version = "25.0", source = { registry = "https://pypi.org/simple" } }, - { name = "py-key-value-aio", extra = ["filetree", "keyring", "memory"], marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "pyperclip" }, - { name = "python-multipart" }, - { name = "pyyaml" }, - { name = "starlette" }, - { name = "uncalled-for" }, - { name = "uvicorn" }, - { name = "watchfiles" }, - { name = "websockets", version = "15.0.1", source = { registry = "https://pypi.org/simple" } }, -] [[package]] name = "fastuuid" @@ -2172,9 +2099,9 @@ dependencies = [ { name = "graphviz" }, { name = "httpx" }, { name = "jsonschema" }, - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, - { name = "opentelemetry-sdk", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, - { name = "packaging", version = "25.0", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-sdk", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, + { name = "packaging" }, { name = "pydantic" }, { name = "python-dotenv" }, { name = "python-multipart" }, @@ -2364,23 +2291,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/e4/d3/5268aeabf2ad82658c4e2ff3a060648d0f02f3926cb53247c0e4d0dab49e/griffelib-2.1.0-py3-none-any.whl", hash = "sha256:cc7b3d2d2865ad0b909fcc38086e3f554b5ea7acbaa7bbb7ecaa3f5dfb7d9f00", size = 142560, upload-time = "2026-06-19T12:05:38.742Z" }, ] -[[package]] -name = "groq" -version = "1.5.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "anyio" }, - { name = "distro" }, - { name = "httpx" }, - { name = "pydantic" }, - { name = "sniffio" }, - { name = "typing-extensions" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/0b/3a/31c54e35d694ba9c263939ecae0874c78fc51f22b9fb13d2dab50edf6e3c/groq-1.5.0.tar.gz", hash = "sha256:8648388f8668629490bb0eab11252b4cc43316149fda9c6343e9a9577fe7df88", size = 158239, upload-time = "2026-06-21T22:57:30.202Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/ce/c3/cac2aee75198c0382a2e6070619a798de2288e01850abb6e999746bb92e3/groq-1.5.0-py3-none-any.whl", hash = "sha256:a927fd75b4a60cb066c408cb4f9647536caf74e241ea75bc57d1810501b8203f", size = 143690, upload-time = "2026-06-21T22:57:29.213Z" }, -] - [[package]] name = "grpcio" version = "1.81.1" @@ -2464,56 +2374,10 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/69/b2/119f6e6dcbd96f9069ce9a2665e0146588dc9f88f29549711853645e736a/h2-4.3.0-py3-none-any.whl", hash = "sha256:c438f029a25f7945c69e0ccf0fb951dc3f73a5f6412981daee861431b70e2bdd", size = 61779, upload-time = "2025-08-23T18:12:17.779Z" }, ] -[[package]] -name = "hf-xet" -version = "1.4.3" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14'", - "python_full_version == '3.13.*'", - "python_full_version == '3.12.*'", - "python_full_version == '3.11.*'", - "python_full_version < '3.11'", -] -sdist = { url = "https://files.pythonhosted.org/packages/53/92/ec9ad04d0b5728dca387a45af7bc98fbb0d73b2118759f5f6038b61a57e8/hf_xet-1.4.3.tar.gz", hash = "sha256:8ddedb73c8c08928c793df2f3401ec26f95be7f7e516a7bee2fbb546f6676113", size = 670477, upload-time = "2026-03-31T22:40:07.874Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/72/43/724d307b34e353da0abd476e02f72f735cdd2bc86082dee1b32ea0bfee1d/hf_xet-1.4.3-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:7551659ba4f1e1074e9623996f28c3873682530aee0a846b7f2f066239228144", size = 3800935, upload-time = "2026-03-31T22:39:49.618Z" }, - { url = "https://files.pythonhosted.org/packages/2b/d2/8bee5996b699262edb87dbb54118d287c0e1b2fc78af7cdc41857ba5e3c4/hf_xet-1.4.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:bee693ada985e7045997f05f081d0e12c4c08bd7626dc397f8a7c487e6c04f7f", size = 3558942, upload-time = "2026-03-31T22:39:47.938Z" }, - { url = "https://files.pythonhosted.org/packages/c3/a1/e993d09cbe251196fb60812b09a58901c468127b7259d2bf0f68bf6088eb/hf_xet-1.4.3-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:21644b404bb0100fe3857892f752c4d09642586fd988e61501c95bbf44b393a3", size = 4207657, upload-time = "2026-03-31T22:39:39.69Z" }, - { url = "https://files.pythonhosted.org/packages/64/44/9eb6d21e5c34c63e5e399803a6932fa983cabdf47c0ecbcfe7ea97684b8c/hf_xet-1.4.3-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:987f09cfe418237812896a6736b81b1af02a3a6dcb4b4944425c4c4fca7a7cf8", size = 3986765, upload-time = "2026-03-31T22:39:37.936Z" }, - { url = "https://files.pythonhosted.org/packages/ea/7b/8ad6f16fdb82f5f7284a34b5ec48645bd575bdcd2f6f0d1644775909c486/hf_xet-1.4.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:60cf7fc43a99da0a853345cf86d23738c03983ee5249613a6305d3e57a5dca74", size = 4188162, upload-time = "2026-03-31T22:39:58.382Z" }, - { url = "https://files.pythonhosted.org/packages/1b/c4/39d6e136cbeea9ca5a23aad4b33024319222adbdc059ebcda5fc7d9d5ff4/hf_xet-1.4.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:2815a49a7a59f3e2edf0cf113ae88e8cb2ca2a221bf353fb60c609584f4884d4", size = 4424525, upload-time = "2026-03-31T22:40:00.225Z" }, - { url = "https://files.pythonhosted.org/packages/46/f2/adc32dae6bdbc367853118b9878139ac869419a4ae7ba07185dc31251b76/hf_xet-1.4.3-cp313-cp313t-win_amd64.whl", hash = "sha256:42ee323265f1e6a81b0e11094564fb7f7e0ec75b5105ffd91ae63f403a11931b", size = 3671610, upload-time = "2026-03-31T22:40:10.42Z" }, - { url = "https://files.pythonhosted.org/packages/e2/19/25d897dcc3f81953e0c2cde9ec186c7a0fee413eb0c9a7a9130d87d94d3a/hf_xet-1.4.3-cp313-cp313t-win_arm64.whl", hash = "sha256:27c976ba60079fb8217f485b9c5c7fcd21c90b0367753805f87cb9f3cdc4418a", size = 3528529, upload-time = "2026-03-31T22:40:09.106Z" }, - { url = "https://files.pythonhosted.org/packages/ec/36/3e8f85ca9fe09b8de2b2e10c63b3b3353d7dda88a0b3d426dffbe7b8313b/hf_xet-1.4.3-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:5251d5ece3a81815bae9abab41cf7ddb7bcb8f56411bce0827f4a3071c92fdc6", size = 3801019, upload-time = "2026-03-31T22:39:56.651Z" }, - { url = "https://files.pythonhosted.org/packages/b5/9c/defb6cb1de28bccb7bd8d95f6e60f72a3d3fa4cb3d0329c26fb9a488bfe7/hf_xet-1.4.3-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:1feb0f3abeacee143367c326a128a2e2b60868ec12a36c225afb1d6c5a05e6d2", size = 3558746, upload-time = "2026-03-31T22:39:54.766Z" }, - { url = "https://files.pythonhosted.org/packages/c1/bd/8d001191893178ff8e826e46ad5299446e62b93cd164e17b0ffea08832ec/hf_xet-1.4.3-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:8b301fc150290ca90b4fccd079829b84bb4786747584ae08b94b4577d82fb791", size = 4207692, upload-time = "2026-03-31T22:39:46.246Z" }, - { url = "https://files.pythonhosted.org/packages/ce/48/6790b402803250e9936435613d3a78b9aaeee7973439f0918848dde58309/hf_xet-1.4.3-cp314-cp314t-manylinux_2_28_aarch64.whl", hash = "sha256:d972fbe95ddc0d3c0fc49b31a8a69f47db35c1e3699bf316421705741aab6653", size = 3986281, upload-time = "2026-03-31T22:39:44.648Z" }, - { url = "https://files.pythonhosted.org/packages/51/56/ea62552fe53db652a9099eda600b032d75554d0e86c12a73824bfedef88b/hf_xet-1.4.3-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:c5b48db1ee344a805a1b9bd2cda9b6b65fe77ed3787bd6e87ad5521141d317cd", size = 4187414, upload-time = "2026-03-31T22:40:04.951Z" }, - { url = "https://files.pythonhosted.org/packages/7d/f5/bc1456d4638061bea997e6d2db60a1a613d7b200e0755965ec312dc1ef79/hf_xet-1.4.3-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:22bdc1f5fb8b15bf2831440b91d1c9bbceeb7e10c81a12e8d75889996a5c9da8", size = 4424368, upload-time = "2026-03-31T22:40:06.347Z" }, - { url = "https://files.pythonhosted.org/packages/e4/76/ab597bae87e1f06d18d3ecb8ed7f0d3c9a37037fc32ce76233d369273c64/hf_xet-1.4.3-cp314-cp314t-win_amd64.whl", hash = "sha256:0392c79b7cf48418cd61478c1a925246cf10639f4cd9d94368d8ca1e8df9ea07", size = 3672280, upload-time = "2026-03-31T22:40:16.401Z" }, - { url = "https://files.pythonhosted.org/packages/62/05/2e462d34e23a09a74d73785dbed71cc5dbad82a72eee2ad60a72a554155d/hf_xet-1.4.3-cp314-cp314t-win_arm64.whl", hash = "sha256:681c92a07796325778a79d76c67011764ecc9042a8c3579332b61b63ae512075", size = 3528945, upload-time = "2026-03-31T22:40:14.995Z" }, - { url = "https://files.pythonhosted.org/packages/ac/9f/9c23e4a447b8f83120798f9279d0297a4d1360bdbf59ef49ebec78fe2545/hf_xet-1.4.3-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:d0da85329eaf196e03e90b84c2d0aca53bd4573d097a75f99609e80775f98025", size = 3805048, upload-time = "2026-03-31T22:39:53.105Z" }, - { url = "https://files.pythonhosted.org/packages/0b/f8/7aacb8e5f4a7899d39c787b5984e912e6c18b11be136ef13947d7a66d265/hf_xet-1.4.3-cp37-abi3-macosx_11_0_arm64.whl", hash = "sha256:e23717ce4186b265f69afa66e6f0069fe7efbf331546f5c313d00e123dc84583", size = 3562178, upload-time = "2026-03-31T22:39:51.295Z" }, - { url = "https://files.pythonhosted.org/packages/df/9a/a24b26dc8a65f0ecc0fe5be981a19e61e7ca963b85e062c083f3a9100529/hf_xet-1.4.3-cp37-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:fc360b70c815bf340ed56c7b8c63aacf11762a4b099b2fe2c9bd6d6068668c08", size = 4212320, upload-time = "2026-03-31T22:39:42.922Z" }, - { url = "https://files.pythonhosted.org/packages/53/60/46d493db155d2ee2801b71fb1b0fd67696359047fdd8caee2c914cc50c79/hf_xet-1.4.3-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:39f2d2e9654cd9b4319885733993807aab6de9dfbd34c42f0b78338d6617421f", size = 3991546, upload-time = "2026-03-31T22:39:41.335Z" }, - { url = "https://files.pythonhosted.org/packages/bc/f5/067363e1c96c6b17256910830d1b54099d06287e10f4ec6ec4e7e08371fc/hf_xet-1.4.3-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:49ad8a8cead2b56051aa84d7fce3e1335efe68df3cf6c058f22a65513885baac", size = 4193200, upload-time = "2026-03-31T22:40:01.936Z" }, - { url = "https://files.pythonhosted.org/packages/42/4b/53951592882d9c23080c7644542fda34a3813104e9e11fa1a7d82d419cb8/hf_xet-1.4.3-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:7716d62015477a70ea272d2d68cd7cad140f61c52ee452e133e139abfe2c17ba", size = 4429392, upload-time = "2026-03-31T22:40:03.492Z" }, - { url = "https://files.pythonhosted.org/packages/8a/21/75a6c175b4e79662ad8e62f46a40ce341d8d6b206b06b4320d07d55b188c/hf_xet-1.4.3-cp37-abi3-win_amd64.whl", hash = "sha256:6b591fcad34e272a5b02607485e4f2a1334aebf1bc6d16ce8eb1eb8978ac2021", size = 3677359, upload-time = "2026-03-31T22:40:13.619Z" }, - { url = "https://files.pythonhosted.org/packages/8a/7c/44314ecd0e89f8b2b51c9d9e5e7a60a9c1c82024ac471d415860557d3cd8/hf_xet-1.4.3-cp37-abi3-win_arm64.whl", hash = "sha256:7c2c7e20bcfcc946dc67187c203463f5e932e395845d098cc2a93f5b67ca0b47", size = 3533664, upload-time = "2026-03-31T22:40:12.152Z" }, -] - [[package]] name = "hf-xet" version = "1.5.1" source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14'", - "python_full_version == '3.13.*'", - "python_full_version == '3.12.*'", - "python_full_version == '3.11.*'", - "python_full_version < '3.11'", -] sdist = { url = "https://files.pythonhosted.org/packages/4b/2d/57fd21d84d93efb4bd0b962383790e19dd1bc053501b4264c97903b4e83e/hf_xet-1.5.1.tar.gz", hash = "sha256:51ef4500dab3764b41135ee1381a4b62ce56fc54d4c92b719b59e597d6df5bf6", size = 876636, upload-time = "2026-06-08T23:02:53.897Z" } wheels = [ { url = "https://files.pythonhosted.org/packages/64/ee/dd9ba7beae1005e54131b7d45263cc74c8a066d47d354e6d58ae9445a388/hf_xet-1.5.1-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:dbf48c0d02cf0b2e568944330c60d9120c272dabe013bd892d48e25bc6797577", size = 4069485, upload-time = "2026-06-08T23:02:13.193Z" }, @@ -2622,56 +2486,21 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/31/22/859d8252dad9bc9adee34b52e62cde621ece07b042ccb2ab4da1be46695f/httpx2-2.5.0-py3-none-any.whl", hash = "sha256:3d2d4d9cf4b61f1a1f46a95947cfdb47e80cb56a2f91c6256ac8f58e4891df41", size = 76652, upload-time = "2026-06-25T14:16:55.23Z" }, ] -[[package]] -name = "huggingface-hub" -version = "1.18.0" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14'", - "python_full_version == '3.13.*'", - "python_full_version == '3.12.*'", - "python_full_version == '3.11.*'", - "python_full_version < '3.11'", -] -dependencies = [ - { name = "click", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "filelock", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "fsspec", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "hf-xet", version = "1.4.3", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine == 'AMD64' and extra == 'group-10-braintrust-lint') or (platform_machine == 'aarch64' and extra == 'group-10-braintrust-lint') or (platform_machine == 'amd64' and extra == 'group-10-braintrust-lint') or (platform_machine == 'arm64' and extra == 'group-10-braintrust-lint') or (platform_machine == 'x86_64' and extra == 'group-10-braintrust-lint') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "httpx", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "packaging", version = "25.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "pyyaml", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "tqdm", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "typer", version = "0.25.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "typing-extensions", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/fb/d8/748ea0a47f0fa15227fe682f7a80826b4b7c096e4818044b8f56d6cb66d6/huggingface_hub-1.18.0.tar.gz", hash = "sha256:f0c5ecd1ef8c6a60f86f61ee278f2c1570ba9e279c9f54de9094210723b3613b", size = 812699, upload-time = "2026-06-05T09:26:33.401Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/0b/03/40a05316cb6616e5b7efd7773656441ab04b4b022c2199e79bb4622a92a3/huggingface_hub-1.18.0-py3-none-any.whl", hash = "sha256:729be4a976fb706dcc02d176bcda8a3f32bdf21a294e8f4b3dda6fbcbc9c1ab1", size = 684411, upload-time = "2026-06-05T09:26:31.48Z" }, -] - [[package]] name = "huggingface-hub" version = "1.21.0" source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14'", - "python_full_version == '3.13.*'", - "python_full_version == '3.12.*'", - "python_full_version == '3.11.*'", - "python_full_version < '3.11'", -] dependencies = [ - { name = "click", marker = "extra == 'group-10-braintrust-test-crewai' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands')" }, - { name = "filelock", marker = "extra == 'group-10-braintrust-test-crewai' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands')" }, - { name = "fsspec", marker = "extra == 'group-10-braintrust-test-crewai' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands')" }, - { name = "hf-xet", version = "1.5.1", source = { registry = "https://pypi.org/simple" }, marker = "(platform_machine == 'AMD64' and extra == 'group-10-braintrust-test-crewai') or (platform_machine == 'aarch64' and extra == 'group-10-braintrust-test-crewai') or (platform_machine == 'amd64' and extra == 'group-10-braintrust-test-crewai') or (platform_machine == 'arm64' and extra == 'group-10-braintrust-test-crewai') or (platform_machine == 'x86_64' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "httpx", marker = "extra == 'group-10-braintrust-test-crewai' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands')" }, - { name = "packaging", version = "26.2", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-crewai' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands')" }, - { name = "pyyaml", marker = "extra == 'group-10-braintrust-test-crewai' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands')" }, - { name = "tqdm", marker = "extra == 'group-10-braintrust-test-crewai' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands')" }, - { name = "typer", version = "0.25.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-crewai' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands')" }, - { name = "typing-extensions", marker = "extra == 'group-10-braintrust-test-crewai' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands')" }, + { name = "click" }, + { name = "filelock" }, + { name = "fsspec" }, + { name = "hf-xet", marker = "platform_machine == 'AMD64' or platform_machine == 'aarch64' or platform_machine == 'amd64' or platform_machine == 'arm64' or platform_machine == 'x86_64'" }, + { name = "httpx" }, + { name = "packaging" }, + { name = "pyyaml" }, + { name = "tqdm" }, + { name = "typer", version = "0.25.1", source = { registry = "https://pypi.org/simple" } }, + { name = "typing-extensions" }, ] sdist = { url = "https://files.pythonhosted.org/packages/8f/77/ce3331f40cb2d021fe9b24c46c41e72faf74493621138e5eddac12bf5e1c/huggingface_hub-1.21.0.tar.gz", hash = "sha256:a44f222cd8f2f7c2eade30b5e7a04cac984a3235fa61ea87a0a5a31db77d561f", size = 861572, upload-time = "2026-06-25T13:09:26.356Z" } wheels = [ @@ -2769,6 +2598,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/80/8d/f668a30fff4d25b36533355e23aeb0b5724df4628eb974124ed64b7bcf8d/instructor-1.15.4-py3-none-any.whl", hash = "sha256:00e0ecda80fd9746fb6d082d3f9641e193adb1d8849f0775f91519a82aeff968", size = 252522, upload-time = "2026-06-28T07:36:36.863Z" }, ] +[[package]] +name = "invoke" +version = "2.2.1" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/de/bd/b461d3424a24c80490313fd77feeb666ca4f6a28c7e72713e3d9095719b4/invoke-2.2.1.tar.gz", hash = "sha256:515bf49b4a48932b79b024590348da22f39c4942dff991ad1fb8b8baea1be707", size = 304762, upload-time = "2025-10-11T00:36:35.172Z" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/32/4b/b99e37f88336009971405cbb7630610322ed6fbfa31e1d7ab3fbf3049a2d/invoke-2.2.1-py3-none-any.whl", hash = "sha256:2413bc441b376e5cd3f55bb5d364f973ad8bdd7bf87e53c79de3c11bf3feecc8", size = 160287, upload-time = "2025-10-11T00:36:33.703Z" }, +] + [[package]] name = "isort" version = "8.0.1" @@ -3158,21 +2996,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/69/90/f63fb5873511e014207a475e2bb4e8b2e570d655b00ac19a9a0ca0a385ee/jsonschema-4.26.0-py3-none-any.whl", hash = "sha256:d489f15263b8d200f8387e64b4c3a75f06629559fb73deb8fdfb525f2dab50ce", size = 90630, upload-time = "2026-01-07T13:41:05.306Z" }, ] -[[package]] -name = "jsonschema-path" -version = "0.5.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "attrs" }, - { name = "pathable" }, - { name = "pyyaml" }, - { name = "referencing" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/39/79/cd02a4df6d9270efdc7d3feefe6edd730b0820c39eeaa107a2faee8322d5/jsonschema_path-0.5.0.tar.gz", hash = "sha256:493b156ba895c97602655b620a8456caa2ce08c1aa389f5a7addec065e6e855c", size = 19597, upload-time = "2026-05-19T20:45:00.971Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/04/2c/9e69d73c4297508be9e3b64a970ea3971b3eb8db64ffc5802d40bd25981f/jsonschema_path-0.5.0-py3-none-any.whl", hash = "sha256:2790a070bc7abb08ea3dbe4d340ece4efadf639223001f020c7503229ba068e2", size = 24077, upload-time = "2026-05-19T20:44:59.225Z" }, -] - [[package]] name = "jsonschema-specifications" version = "2025.9.1" @@ -3226,8 +3049,7 @@ dependencies = [ { name = "langchain-protocol" }, { name = "langsmith", version = "0.8.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "langsmith", version = "0.9.3", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-langchain' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands')" }, - { name = "packaging", version = "25.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "packaging", version = "26.2", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-langchain' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands')" }, + { name = "packaging" }, { name = "pydantic" }, { name = "pyyaml" }, { name = "tenacity" }, @@ -3335,7 +3157,7 @@ resolution-markers = [ dependencies = [ { name = "httpx", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "orjson", version = "3.11.9", source = { registry = "https://pypi.org/simple" }, marker = "(platform_python_implementation != 'PyPy' and extra == 'group-10-braintrust-lint') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "packaging", version = "25.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "packaging", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "pydantic", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "requests", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "requests-toolbelt", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, @@ -3364,7 +3186,7 @@ dependencies = [ { name = "distro", marker = "extra == 'group-10-braintrust-test-langchain' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands')" }, { name = "httpx", marker = "extra == 'group-10-braintrust-test-langchain' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands')" }, { name = "orjson", version = "3.11.9", source = { registry = "https://pypi.org/simple" }, marker = "(platform_python_implementation != 'PyPy' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "packaging", version = "26.2", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-langchain' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands')" }, + { name = "packaging", marker = "extra == 'group-10-braintrust-test-langchain' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands')" }, { name = "pydantic", marker = "extra == 'group-10-braintrust-test-langchain' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands')" }, { name = "requests", marker = "extra == 'group-10-braintrust-test-langchain' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands')" }, { name = "requests-toolbelt", marker = "extra == 'group-10-braintrust-test-langchain' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands')" }, @@ -3533,11 +3355,11 @@ dependencies = [ { name = "numpy", version = "2.5.0", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.12' and extra == 'group-10-braintrust-lint') or (python_full_version >= '3.12' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "openai", version = "2.32.0", source = { registry = "https://pypi.org/simple" } }, { name = "opentelemetry-api", version = "1.38.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "opentelemetry-exporter-otlp", version = "1.38.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-exporter-otlp", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-exporter-otlp", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "opentelemetry-sdk", version = "1.38.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-sdk", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-sdk", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "prometheus-client" }, { name = "protobuf", version = "5.29.6", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "protobuf", version = "6.33.6", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, @@ -3764,12 +3586,9 @@ version = "4.32.1" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "executing", marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-exporter-otlp-proto-http", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-exporter-otlp-proto-http", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, - { name = "opentelemetry-instrumentation", version = "0.60b1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-instrumentation", version = "0.61b0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, - { name = "opentelemetry-sdk", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-sdk", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, + { name = "opentelemetry-exporter-otlp-proto-http", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-instrumentation", marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-sdk", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "protobuf", version = "5.29.6", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "protobuf", version = "6.33.6", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, { name = "rich", version = "14.3.4", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, @@ -3898,7 +3717,7 @@ name = "marshmallow" version = "3.26.2" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "packaging", version = "25.0", source = { registry = "https://pypi.org/simple" } }, + { name = "packaging" }, ] sdist = { url = "https://files.pythonhosted.org/packages/55/79/de6c16cc902f4fc372236926b0ce2ab7845268dcc30fb2fbb7f71b418631/marshmallow-3.26.2.tar.gz", hash = "sha256:bbe2adb5a03e6e3571b573f42527c6fe926e17467833660bebd11593ab8dfd57", size = 222095, upload-time = "2025-12-22T06:53:53.309Z" } wheels = [ @@ -3950,21 +3769,23 @@ wheels = [ [[package]] name = "mistralai" -version = "2.5.0" +version = "1.12.4" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "eval-type-backport" }, { name = "httpx" }, - { name = "jsonpath-python" }, - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, - { name = "opentelemetry-semantic-conventions", version = "0.60b1", source = { registry = "https://pypi.org/simple" } }, + { name = "invoke" }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-exporter-otlp-proto-http", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-sdk", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, { name = "pydantic" }, { name = "python-dateutil" }, + { name = "pyyaml" }, { name = "typing-inspection" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/c8/88/960acba5e95998b4a09998d14ff95a25ada8c96ce8670091e3bf85f25696/mistralai-2.5.0.tar.gz", hash = "sha256:b2724154f62f6505d22027cbdb414e2bb143474bb51f89dc362afb1b141d2bae", size = 504089, upload-time = "2026-06-23T17:05:22.687Z" } +sdist = { url = "https://files.pythonhosted.org/packages/aa/12/c3476c53e907255b5f485f085ba50dd9a84b40fe662e9a888d6ded26fa7b/mistralai-1.12.4.tar.gz", hash = "sha256:e52b53bab58025dcd208eeac13e3c3df5778d4112eeca1f08124096c7738929f", size = 243129, upload-time = "2026-02-20T17:55:13.73Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/e0/31/472fa3c766aa9b7869dceb6804344cc9945115ae2ee871258b404d0e7c84/mistralai-2.5.0-py3-none-any.whl", hash = "sha256:f29813f1c2e4c19d24707cb5f74ea5c071d106fcaa84dd856a7e4f2d36d908b2", size = 1216614, upload-time = "2026-06-23T17:05:20.819Z" }, + { url = "https://files.pythonhosted.org/packages/c9/f9/98d825105c450b9c67c27026caa374112b7e466c18331601d02ca278a01b/mistralai-1.12.4-py3-none-any.whl", hash = "sha256:7b69fcbc306436491ad3377fbdead527c9f3a0ce145ec029bf04c6308ff2cca6", size = 509321, upload-time = "2026-02-20T17:55:15.27Z" }, ] [[package]] @@ -4272,8 +4093,7 @@ dependencies = [ { name = "colorlog" }, { name = "dependency-groups" }, { name = "humanize" }, - { name = "packaging", version = "25.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "packaging", version = "26.2", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-livekit-agents' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or extra != 'group-10-braintrust-lint'" }, + { name = "packaging" }, { name = "tomli", marker = "python_full_version < '3.11' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "virtualenv" }, ] @@ -4495,8 +4315,7 @@ dependencies = [ { name = "numpy", version = "2.2.6", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and extra == 'group-10-braintrust-lint') or (python_full_version < '3.11' and extra != 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "numpy", version = "2.4.6", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version == '3.11.*' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "numpy", version = "2.5.0", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version >= '3.12' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "packaging", version = "25.0", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and extra == 'group-10-braintrust-lint') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "packaging", version = "26.2", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "packaging", marker = "(python_full_version < '3.11' and extra == 'group-10-braintrust-lint') or extra == 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "protobuf", version = "5.29.6", source = { registry = "https://pypi.org/simple" }, marker = "(python_full_version < '3.11' and extra == 'group-10-braintrust-lint') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "protobuf", version = "6.33.6", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "sympy", marker = "(python_full_version < '3.11' and extra == 'group-10-braintrust-lint') or extra == 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra != 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra != 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, @@ -4663,18 +4482,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/80/ec/775a14cfd5f12f4ffe458c7ac9527831093c72e8c1aef682898fc6394106/openai_agents-0.17.3-py3-none-any.whl", hash = "sha256:a048bb0752d40913d18bccf6562f56260b603bb57c972597b6da58f60123f4bd", size = 841541, upload-time = "2026-05-19T01:28:13.334Z" }, ] -[[package]] -name = "openapi-pydantic" -version = "0.5.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "pydantic" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/02/2e/58d83848dd1a79cb92ed8e63f6ba901ca282c5f09d04af9423ec26c56fd7/openapi_pydantic-0.5.1.tar.gz", hash = "sha256:ff6835af6bde7a459fb93eb93bb92b8749b754fc6e51b2f1590a19dc3005ee0d", size = 60892, upload-time = "2025-01-08T19:29:27.083Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/12/cf/03675d8bd8ecbf4445504d8071adab19f5f993676795708e36402ab38263/openapi_pydantic-0.5.1-py3-none-any.whl", hash = "sha256:a3a09ef4586f5bd760a8df7f43028b60cafb6d9f61de2acba9574766255ab146", size = 96381, upload-time = "2025-01-08T19:29:25.275Z" }, -] - [[package]] name = "openrouter" version = "0.10.8" @@ -4710,26 +4517,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/ae/a2/d86e01c28300bd41bab8f18afd613676e2bd63515417b77636fc1add426f/opentelemetry_api-1.38.0-py3-none-any.whl", hash = "sha256:2891b0197f47124454ab9f0cf58f3be33faca394457ac3e09daba13ff50aa582", size = 65947, upload-time = "2025-10-16T08:35:30.23Z" }, ] -[[package]] -name = "opentelemetry-api" -version = "1.39.1" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14'", - "python_full_version == '3.13.*'", - "python_full_version == '3.12.*'", - "python_full_version == '3.11.*'", - "python_full_version < '3.11'", -] -dependencies = [ - { name = "importlib-metadata", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "typing-extensions", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/97/b9/3161be15bb8e3ad01be8be5a968a9237c3027c5be504362ff800fca3e442/opentelemetry_api-1.39.1.tar.gz", hash = "sha256:fbde8c80e1b937a2c61f20347e91c0c18a1940cecf012d62e65a7caf08967c9c", size = 65767, upload-time = "2025-12-11T13:32:39.182Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/cf/df/d3f1ddf4bb4cb50ed9b1139cc7b1c54c34a1e7ce8fd1b9a37c0d1551a6bd/opentelemetry_api-1.39.1-py3-none-any.whl", hash = "sha256:2edd8463432a7f8443edce90972169b195e7d6a05500cd29e6d13898187c9950", size = 66356, upload-time = "2025-12-11T13:32:17.304Z" }, -] - [[package]] name = "opentelemetry-api" version = "1.40.0" @@ -4742,8 +4529,8 @@ resolution-markers = [ "python_full_version < '3.11'", ] dependencies = [ - { name = "importlib-metadata", marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, - { name = "typing-extensions", marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, + { name = "importlib-metadata", marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "typing-extensions", marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/2c/1d/4049a9e8698361cc1a1aa03a6c59e4fa4c71e0c0f94a30f988a6876a2ae6/opentelemetry_api-1.40.0.tar.gz", hash = "sha256:159be641c0b04d11e9ecd576906462773eb97ae1b657730f0ecf64d32071569f", size = 70851, upload-time = "2026-03-04T14:17:21.555Z" } wheels = [ @@ -4772,7 +4559,7 @@ wheels = [ [[package]] name = "opentelemetry-exporter-otlp" -version = "1.39.1" +version = "1.40.0" source = { registry = "https://pypi.org/simple" } resolution-markers = [ "python_full_version >= '3.14'", @@ -4782,12 +4569,12 @@ resolution-markers = [ "python_full_version < '3.11'", ] dependencies = [ - { name = "opentelemetry-exporter-otlp-proto-grpc", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-exporter-otlp-proto-http", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-exporter-otlp-proto-grpc", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-exporter-otlp-proto-http", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/30/9c/3ab1db90f32da200dba332658f2bbe602369e3d19f6aba394031a42635be/opentelemetry_exporter_otlp-1.39.1.tar.gz", hash = "sha256:7cf7470e9fd0060c8a38a23e4f695ac686c06a48ad97f8d4867bc9b420180b9c", size = 6147, upload-time = "2025-12-11T13:32:40.309Z" } +sdist = { url = "https://files.pythonhosted.org/packages/d0/37/b6708e0eff5c5fb9aba2e0ea09f7f3bcbfd12a592d2a780241b5f6014df7/opentelemetry_exporter_otlp-1.40.0.tar.gz", hash = "sha256:7caa0870b95e2fcb59d64e16e2b639ecffb07771b6cd0000b5d12e5e4fef765a", size = 6152, upload-time = "2026-03-04T14:17:23.235Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/00/6c/bdc82a066e6fb1dcf9e8cc8d4e026358fe0f8690700cc6369a6bf9bd17a7/opentelemetry_exporter_otlp-1.39.1-py3-none-any.whl", hash = "sha256:68ae69775291f04f000eb4b698ff16ff685fdebe5cb52871bc4e87938a7b00fe", size = 7019, upload-time = "2025-12-11T13:32:19.387Z" }, + { url = "https://files.pythonhosted.org/packages/2d/fc/aea77c28d9f3ffef2fdafdc3f4a235aee4091d262ddabd25882f47ce5c5f/opentelemetry_exporter_otlp-1.40.0-py3-none-any.whl", hash = "sha256:48c87e539ec9afb30dc443775a1334cc5487de2f72a770a4c00b1610bf6c697d", size = 7023, upload-time = "2026-03-04T14:17:03.612Z" }, ] [[package]] @@ -4809,25 +4596,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/a7/9e/55a41c9601191e8cd8eb626b54ee6827b9c9d4a46d736f32abc80d8039fc/opentelemetry_exporter_otlp_proto_common-1.38.0-py3-none-any.whl", hash = "sha256:03cb76ab213300fe4f4c62b7d8f17d97fcfd21b89f0b5ce38ea156327ddda74a", size = 18359, upload-time = "2025-10-16T08:35:34.099Z" }, ] -[[package]] -name = "opentelemetry-exporter-otlp-proto-common" -version = "1.39.1" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14'", - "python_full_version == '3.13.*'", - "python_full_version == '3.12.*'", - "python_full_version == '3.11.*'", - "python_full_version < '3.11'", -] -dependencies = [ - { name = "opentelemetry-proto", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/e9/9d/22d241b66f7bbde88a3bfa6847a351d2c46b84de23e71222c6aae25c7050/opentelemetry_exporter_otlp_proto_common-1.39.1.tar.gz", hash = "sha256:763370d4737a59741c89a67b50f9e39271639ee4afc999dadfe768541c027464", size = 20409, upload-time = "2025-12-11T13:32:40.885Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/8c/02/ffc3e143d89a27ac21fd557365b98bd0653b98de8a101151d5805b5d4c33/opentelemetry_exporter_otlp_proto_common-1.39.1-py3-none-any.whl", hash = "sha256:08f8a5862d64cc3435105686d0216c1365dc5701f86844a8cd56597d0c764fde", size = 18366, upload-time = "2025-12-11T13:32:20.2Z" }, -] - [[package]] name = "opentelemetry-exporter-otlp-proto-common" version = "1.40.0" @@ -4840,7 +4608,7 @@ resolution-markers = [ "python_full_version < '3.11'", ] dependencies = [ - { name = "opentelemetry-proto", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, + { name = "opentelemetry-proto", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/51/bc/1559d46557fe6eca0b46c88d4c2676285f1f3be2e8d06bb5d15fbffc814a/opentelemetry_exporter_otlp_proto_common-1.40.0.tar.gz", hash = "sha256:1cbee86a4064790b362a86601ee7934f368b81cd4cc2f2e163902a6e7818a0fa", size = 20416, upload-time = "2026-03-04T14:17:23.801Z" } wheels = [ @@ -4874,7 +4642,7 @@ wheels = [ [[package]] name = "opentelemetry-exporter-otlp-proto-grpc" -version = "1.39.1" +version = "1.40.0" source = { registry = "https://pypi.org/simple" } resolution-markers = [ "python_full_version >= '3.14'", @@ -4886,15 +4654,15 @@ resolution-markers = [ dependencies = [ { name = "googleapis-common-protos", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "grpcio", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-exporter-otlp-proto-common", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-proto", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-sdk", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-exporter-otlp-proto-common", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-proto", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-sdk", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "typing-extensions", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/53/48/b329fed2c610c2c32c9366d9dc597202c9d1e58e631c137ba15248d8850f/opentelemetry_exporter_otlp_proto_grpc-1.39.1.tar.gz", hash = "sha256:772eb1c9287485d625e4dbe9c879898e5253fea111d9181140f51291b5fec3ad", size = 24650, upload-time = "2025-12-11T13:32:41.429Z" } +sdist = { url = "https://files.pythonhosted.org/packages/8f/7f/b9e60435cfcc7590fa87436edad6822240dddbc184643a2a005301cc31f4/opentelemetry_exporter_otlp_proto_grpc-1.40.0.tar.gz", hash = "sha256:bd4015183e40b635b3dab8da528b27161ba83bf4ef545776b196f0fb4ec47740", size = 25759, upload-time = "2026-03-04T14:17:24.4Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/81/a3/cc9b66575bd6597b98b886a2067eea2693408d2d5f39dad9ab7fc264f5f3/opentelemetry_exporter_otlp_proto_grpc-1.39.1-py3-none-any.whl", hash = "sha256:fa1c136a05c7e9b4c09f739469cbdb927ea20b34088ab1d959a849b5cc589c18", size = 19766, upload-time = "2025-12-11T13:32:21.027Z" }, + { url = "https://files.pythonhosted.org/packages/96/6f/7ee0980afcbdcd2d40362da16f7f9796bd083bf7f0b8e038abfbc0300f5d/opentelemetry_exporter_otlp_proto_grpc-1.40.0-py3-none-any.whl", hash = "sha256:2aa0ca53483fe0cf6405087a7491472b70335bc5c7944378a0a8e72e86995c52", size = 20304, upload-time = "2026-03-04T14:17:05.942Z" }, ] [[package]] @@ -4922,31 +4690,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/e5/77/154004c99fb9f291f74aa0822a2f5bbf565a72d8126b3a1b63ed8e5f83c7/opentelemetry_exporter_otlp_proto_http-1.38.0-py3-none-any.whl", hash = "sha256:84b937305edfc563f08ec69b9cb2298be8188371217e867c1854d77198d0825b", size = 19579, upload-time = "2025-10-16T08:35:36.269Z" }, ] -[[package]] -name = "opentelemetry-exporter-otlp-proto-http" -version = "1.39.1" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14'", - "python_full_version == '3.13.*'", - "python_full_version == '3.12.*'", - "python_full_version == '3.11.*'", - "python_full_version < '3.11'", -] -dependencies = [ - { name = "googleapis-common-protos", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-exporter-otlp-proto-common", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-proto", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-sdk", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "requests", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "typing-extensions", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/80/04/2a08fa9c0214ae38880df01e8bfae12b067ec0793446578575e5080d6545/opentelemetry_exporter_otlp_proto_http-1.39.1.tar.gz", hash = "sha256:31bdab9745c709ce90a49a0624c2bd445d31a28ba34275951a6a362d16a0b9cb", size = 17288, upload-time = "2025-12-11T13:32:42.029Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/95/f1/b27d3e2e003cd9a3592c43d099d2ed8d0a947c15281bf8463a256db0b46c/opentelemetry_exporter_otlp_proto_http-1.39.1-py3-none-any.whl", hash = "sha256:d9f5207183dd752a412c4cd564ca8875ececba13be6e9c6c370ffb752fd59985", size = 19641, upload-time = "2025-12-11T13:32:22.248Z" }, -] - [[package]] name = "opentelemetry-exporter-otlp-proto-http" version = "1.40.0" @@ -4959,57 +4702,28 @@ resolution-markers = [ "python_full_version < '3.11'", ] dependencies = [ - { name = "googleapis-common-protos", marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, - { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, - { name = "opentelemetry-exporter-otlp-proto-common", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, - { name = "opentelemetry-proto", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, - { name = "opentelemetry-sdk", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, - { name = "requests", marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, - { name = "typing-extensions", marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, + { name = "googleapis-common-protos", marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-exporter-otlp-proto-common", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-proto", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-sdk", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "requests", marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "typing-extensions", marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/2e/fa/73d50e2c15c56be4d000c98e24221d494674b0cc95524e2a8cb3856d95a4/opentelemetry_exporter_otlp_proto_http-1.40.0.tar.gz", hash = "sha256:db48f5e0f33217588bbc00274a31517ba830da576e59503507c839b38fa0869c", size = 17772, upload-time = "2026-03-04T14:17:25.324Z" } wheels = [ { url = "https://files.pythonhosted.org/packages/a0/3a/8865d6754e61c9fb170cdd530a124a53769ee5f740236064816eb0ca7301/opentelemetry_exporter_otlp_proto_http-1.40.0-py3-none-any.whl", hash = "sha256:a8d1dab28f504c5d96577d6509f80a8150e44e8f45f82cdbe0e34c99ab040069", size = 19960, upload-time = "2026-03-04T14:17:07.153Z" }, ] -[[package]] -name = "opentelemetry-instrumentation" -version = "0.60b1" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14'", - "python_full_version == '3.13.*'", - "python_full_version == '3.12.*'", - "python_full_version == '3.11.*'", - "python_full_version < '3.11'", -] -dependencies = [ - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-semantic-conventions", version = "0.60b1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "packaging", version = "25.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "wrapt", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/41/0f/7e6b713ac117c1f5e4e3300748af699b9902a2e5e34c9cf443dde25a01fa/opentelemetry_instrumentation-0.60b1.tar.gz", hash = "sha256:57ddc7974c6eb35865af0426d1a17132b88b2ed8586897fee187fd5b8944bd6a", size = 31706, upload-time = "2025-12-11T13:36:42.515Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/77/d2/6788e83c5c86a2690101681aeef27eeb2a6bf22df52d3f263a22cee20915/opentelemetry_instrumentation-0.60b1-py3-none-any.whl", hash = "sha256:04480db952b48fb1ed0073f822f0ee26012b7be7c3eac1a3793122737c78632d", size = 33096, upload-time = "2025-12-11T13:35:33.067Z" }, -] - [[package]] name = "opentelemetry-instrumentation" version = "0.61b0" source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14'", - "python_full_version == '3.13.*'", - "python_full_version == '3.12.*'", - "python_full_version == '3.11.*'", - "python_full_version < '3.11'", -] dependencies = [ - { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, - { name = "opentelemetry-semantic-conventions", version = "0.61b0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, - { name = "packaging", version = "26.2", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, - { name = "wrapt", marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-semantic-conventions", version = "0.61b0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "packaging", marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "wrapt", marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/da/37/6bf8e66bfcee5d3c6515b79cb2ee9ad05fe573c20f7ceb288d0e7eeec28c/opentelemetry_instrumentation-0.61b0.tar.gz", hash = "sha256:cb21b48db738c9de196eba6b805b4ff9de3b7f187e4bbf9a466fa170514f1fc7", size = 32606, upload-time = "2026-03-04T14:20:16.825Z" } wheels = [ @@ -5018,18 +4732,18 @@ wheels = [ [[package]] name = "opentelemetry-instrumentation-httpx" -version = "0.60b1" +version = "0.61b0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, - { name = "opentelemetry-instrumentation", version = "0.60b1", source = { registry = "https://pypi.org/simple" } }, - { name = "opentelemetry-semantic-conventions", version = "0.60b1", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-instrumentation" }, + { name = "opentelemetry-semantic-conventions", version = "0.61b0", source = { registry = "https://pypi.org/simple" } }, { name = "opentelemetry-util-http" }, { name = "wrapt" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/86/08/11208bcfcab4fc2023252c3f322aa397fd9ad948355fea60f5fc98648603/opentelemetry_instrumentation_httpx-0.60b1.tar.gz", hash = "sha256:a506ebaf28c60112cbe70ad4f0338f8603f148938cb7b6794ce1051cd2b270ae", size = 20611, upload-time = "2025-12-11T13:37:01.661Z" } +sdist = { url = "https://files.pythonhosted.org/packages/cd/2a/e2becd55e33c29d1d9ef76e2579040ed1951cb33bacba259f6aff2fdd2a6/opentelemetry_instrumentation_httpx-0.61b0.tar.gz", hash = "sha256:6569ec097946c5551c2a4252f74c98666addd1bf047c1dde6b4ef426719ff8dd", size = 24104, upload-time = "2026-03-04T14:20:34.752Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/43/59/b98e84eebf745ffc75397eaad4763795bff8a30cbf2373a50ed4e70646c5/opentelemetry_instrumentation_httpx-0.60b1-py3-none-any.whl", hash = "sha256:f37636dd742ad2af83d896ba69601ed28da51fa4e25d1ab62fde89ce413e275b", size = 15701, upload-time = "2025-12-11T13:36:04.56Z" }, + { url = "https://files.pythonhosted.org/packages/af/88/dde310dce56e2d85cf1a09507f5888544955309edc4b8d22971d6d3d1417/opentelemetry_instrumentation_httpx-0.61b0-py3-none-any.whl", hash = "sha256:dee05c93a6593a5dc3ae5d9d5c01df8b4e2c5d02e49275e5558534ee46343d5e", size = 17198, upload-time = "2026-03-04T14:19:33.585Z" }, ] [[package]] @@ -5037,9 +4751,9 @@ name = "opentelemetry-instrumentation-openai" version = "0.59.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, - { name = "opentelemetry-instrumentation", version = "0.60b1", source = { registry = "https://pypi.org/simple" } }, - { name = "opentelemetry-semantic-conventions", version = "0.60b1", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-instrumentation" }, + { name = "opentelemetry-semantic-conventions", version = "0.61b0", source = { registry = "https://pypi.org/simple" } }, { name = "opentelemetry-semantic-conventions-ai" }, ] sdist = { url = "https://files.pythonhosted.org/packages/ec/8d/c3646a8c5fd9d1f43adda7ff3927f6f17c957158615467b65066300ad81b/opentelemetry_instrumentation_openai-0.59.1.tar.gz", hash = "sha256:3b55ec5a5651ec937397e289cfb4a2354df9be84163782ebd9a13799f758ebc6", size = 7326144, upload-time = "2026-04-15T11:11:13.21Z" } @@ -5049,16 +4763,16 @@ wheels = [ [[package]] name = "opentelemetry-instrumentation-threading" -version = "0.60b1" +version = "0.61b0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, - { name = "opentelemetry-instrumentation", version = "0.60b1", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-instrumentation" }, { name = "wrapt" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/9b/0a/e36123ec4c0910a3936b92982545a53e9bca5b26a28df06883751a783f84/opentelemetry_instrumentation_threading-0.60b1.tar.gz", hash = "sha256:20b18a68abe5801fa9474336b7c27487d4af3e00b66f6a8734e4fdd75c8b0b43", size = 8768, upload-time = "2025-12-11T13:37:16.29Z" } +sdist = { url = "https://files.pythonhosted.org/packages/12/8f/8dedba66100cda58af057926449a5e58e6c008bec02bc2746c03c3d85dcd/opentelemetry_instrumentation_threading-0.61b0.tar.gz", hash = "sha256:38e0263c692d15a7a458b3fa0286d29290448fa4ac4c63045edac438c6113433", size = 9163, upload-time = "2026-03-04T14:20:50.546Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/c7/a3/448738b927bcc1843ace7d4ed55dd54441a71363075eeeee89c5944dd740/opentelemetry_instrumentation_threading-0.60b1-py3-none-any.whl", hash = "sha256:92a52a60fee5e32bc6aa8f5acd749b15691ad0bc4457a310f5736b76a6d9d1de", size = 9312, upload-time = "2025-12-11T13:36:28.434Z" }, + { url = "https://files.pythonhosted.org/packages/e8/77/c06d960aede1a014812aa4fafde0ae546d790f46416fbeafa2b32095aae3/opentelemetry_instrumentation_threading-0.61b0-py3-none-any.whl", hash = "sha256:735f4a1dc964202fc8aff475efc12bb64e6566f22dff52d5cb5de864b3fe1a70", size = 9337, upload-time = "2026-03-04T14:19:57.983Z" }, ] [[package]] @@ -5080,25 +4794,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/b6/6a/82b68b14efca5150b2632f3692d627afa76b77378c4999f2648979409528/opentelemetry_proto-1.38.0-py3-none-any.whl", hash = "sha256:b6ebe54d3217c42e45462e2a1ae28c3e2bf2ec5a5645236a490f55f45f1a0a18", size = 72535, upload-time = "2025-10-16T08:35:45.749Z" }, ] -[[package]] -name = "opentelemetry-proto" -version = "1.39.1" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14'", - "python_full_version == '3.13.*'", - "python_full_version == '3.12.*'", - "python_full_version == '3.11.*'", - "python_full_version < '3.11'", -] -dependencies = [ - { name = "protobuf", version = "5.29.6", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/49/1d/f25d76d8260c156c40c97c9ed4511ec0f9ce353f8108ca6e7561f82a06b2/opentelemetry_proto-1.39.1.tar.gz", hash = "sha256:6c8e05144fc0d3ed4d22c2289c6b126e03bcd0e6a7da0f16cedd2e1c2772e2c8", size = 46152, upload-time = "2025-12-11T13:32:48.681Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/51/95/b40c96a7b5203005a0b03d8ce8cd212ff23f1793d5ba289c87a097571b18/opentelemetry_proto-1.39.1-py3-none-any.whl", hash = "sha256:22cdc78efd3b3765d09e68bfbd010d4fc254c9818afd0b6b423387d9dee46007", size = 72535, upload-time = "2025-12-11T13:32:33.866Z" }, -] - [[package]] name = "opentelemetry-proto" version = "1.40.0" @@ -5111,6 +4806,7 @@ resolution-markers = [ "python_full_version < '3.11'", ] dependencies = [ + { name = "protobuf", version = "5.29.6", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "protobuf", version = "6.33.6", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/4c/77/dd38991db037fdfce45849491cb61de5ab000f49824a00230afb112a4392/opentelemetry_proto-1.40.0.tar.gz", hash = "sha256:03f639ca129ba513f5819810f5b1f42bcb371391405d99c168fe6937c62febcd", size = 45667, upload-time = "2026-03-04T14:17:31.194Z" } @@ -5139,27 +4835,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/2f/2e/e93777a95d7d9c40d270a371392b6d6f1ff170c2a3cb32d6176741b5b723/opentelemetry_sdk-1.38.0-py3-none-any.whl", hash = "sha256:1c66af6564ecc1553d72d811a01df063ff097cdc82ce188da9951f93b8d10f6b", size = 132349, upload-time = "2025-10-16T08:35:46.995Z" }, ] -[[package]] -name = "opentelemetry-sdk" -version = "1.39.1" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14'", - "python_full_version == '3.13.*'", - "python_full_version == '3.12.*'", - "python_full_version == '3.11.*'", - "python_full_version < '3.11'", -] -dependencies = [ - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "opentelemetry-semantic-conventions", version = "0.60b1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "typing-extensions", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/eb/fb/c76080c9ba07e1e8235d24cdcc4d125ef7aa3edf23eb4e497c2e50889adc/opentelemetry_sdk-1.39.1.tar.gz", hash = "sha256:cf4d4563caf7bff906c9f7967e2be22d0d6b349b908be0d90fb21c8e9c995cc6", size = 171460, upload-time = "2025-12-11T13:32:49.369Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/7c/98/e91cf858f203d86f4eccdf763dcf01cf03f1dae80c3750f7e635bfa206b6/opentelemetry_sdk-1.39.1-py3-none-any.whl", hash = "sha256:4d5482c478513ecb0a5d938dcc61394e647066e0cc2676bee9f3af3f3f45f01c", size = 132565, upload-time = "2025-12-11T13:32:35.069Z" }, -] - [[package]] name = "opentelemetry-sdk" version = "1.40.0" @@ -5172,9 +4847,9 @@ resolution-markers = [ "python_full_version < '3.11'", ] dependencies = [ - { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, - { name = "opentelemetry-semantic-conventions", version = "0.61b0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, - { name = "typing-extensions", marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "opentelemetry-semantic-conventions", version = "0.61b0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "typing-extensions", marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/58/fd/3c3125b20ba18ce2155ba9ea74acb0ae5d25f8cd39cfd37455601b7955cc/opentelemetry_sdk-1.40.0.tar.gz", hash = "sha256:18e9f5ec20d859d268c7cb3c5198c8d105d073714db3de50b593b8c1345a48f2", size = 184252, upload-time = "2026-03-04T14:17:31.87Z" } wheels = [ @@ -5201,26 +4876,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/24/7d/c88d7b15ba8fe5c6b8f93be50fc11795e9fc05386c44afaf6b76fe191f9b/opentelemetry_semantic_conventions-0.59b0-py3-none-any.whl", hash = "sha256:35d3b8833ef97d614136e253c1da9342b4c3c083bbaf29ce31d572a1c3825eed", size = 207954, upload-time = "2025-10-16T08:35:48.054Z" }, ] -[[package]] -name = "opentelemetry-semantic-conventions" -version = "0.60b1" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14'", - "python_full_version == '3.13.*'", - "python_full_version == '3.12.*'", - "python_full_version == '3.11.*'", - "python_full_version < '3.11'", -] -dependencies = [ - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "typing-extensions", marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/91/df/553f93ed38bf22f4b999d9be9c185adb558982214f33eae539d3b5cd0858/opentelemetry_semantic_conventions-0.60b1.tar.gz", hash = "sha256:87c228b5a0669b748c76d76df6c364c369c28f1c465e50f661e39737e84bc953", size = 137935, upload-time = "2025-12-11T13:32:50.487Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/7a/5e/5958555e09635d09b75de3c4f8b9cae7335ca545d77392ffe7331534c402/opentelemetry_semantic_conventions-0.60b1-py3-none-any.whl", hash = "sha256:9fa8c8b0c110da289809292b0591220d3a7b53c1526a23021e977d68597893fb", size = 219982, upload-time = "2025-12-11T13:32:36.955Z" }, -] - [[package]] name = "opentelemetry-semantic-conventions" version = "0.61b0" @@ -5233,8 +4888,8 @@ resolution-markers = [ "python_full_version < '3.11'", ] dependencies = [ - { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, - { name = "typing-extensions", marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra != 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-livekit-agents')" }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "typing-extensions", marker = "extra == 'group-10-braintrust-lint' or extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra != 'group-10-braintrust-test-livekit-agents' or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/6d/c0/4ae7973f3c2cfd2b6e321f1675626f0dab0a97027cc7a297474c9c8f3d04/opentelemetry_semantic_conventions-0.61b0.tar.gz", hash = "sha256:072f65473c5d7c6dc0355b27d6c9d1a679d63b6d4b4b16a9773062cb7e31192a", size = 145755, upload-time = "2026-03-04T14:17:32.664Z" } wheels = [ @@ -5246,8 +4901,8 @@ name = "opentelemetry-semantic-conventions-ai" version = "0.5.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "opentelemetry-sdk", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, - { name = "opentelemetry-semantic-conventions", version = "0.60b1", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-sdk", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-semantic-conventions", version = "0.61b0", source = { registry = "https://pypi.org/simple" } }, ] sdist = { url = "https://files.pythonhosted.org/packages/24/02/10aeacc37a38a3a8fa16ff67bec1ae3bf882539f6f9efb0f70acf802ca2d/opentelemetry_semantic_conventions_ai-0.5.1.tar.gz", hash = "sha256:153906200d8c1d2f8e09bd78dbef526916023de85ac3dab35912bfafb69ff04c", size = 26533, upload-time = "2026-03-26T14:20:38.73Z" } wheels = [ @@ -5256,11 +4911,11 @@ wheels = [ [[package]] name = "opentelemetry-util-http" -version = "0.60b1" +version = "0.61b0" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/50/fc/c47bb04a1d8a941a4061307e1eddfa331ed4d0ab13d8a9781e6db256940a/opentelemetry_util_http-0.60b1.tar.gz", hash = "sha256:0d97152ca8c8a41ced7172d29d3622a219317f74ae6bb3027cfbdcf22c3cc0d6", size = 11053, upload-time = "2025-12-11T13:37:25.115Z" } +sdist = { url = "https://files.pythonhosted.org/packages/57/3c/f0196223efc5c4ca19f8fad3d5462b171ac6333013335ce540c01af419e9/opentelemetry_util_http-0.61b0.tar.gz", hash = "sha256:1039cb891334ad2731affdf034d8fb8b48c239af9b6dd295e5fabd07f1c95572", size = 11361, upload-time = "2026-03-04T14:20:57.01Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/16/5c/d3f1733665f7cd582ef0842fb1d2ed0bc1fba10875160593342d22bba375/opentelemetry_util_http-0.60b1-py3-none-any.whl", hash = "sha256:66381ba28550c91bee14dcba8979ace443444af1ed609226634596b4b0faf199", size = 8947, upload-time = "2025-12-11T13:36:37.151Z" }, + { url = "https://files.pythonhosted.org/packages/0d/e5/c08aaaf2f64288d2b6ef65741d2de5454e64af3e050f34285fb1907492fe/opentelemetry_util_http-0.61b0-py3-none-any.whl", hash = "sha256:8e715e848233e9527ea47e275659ea60a57a75edf5206a3b937e236a6da5fc33", size = 9281, upload-time = "2026-03-04T14:20:08.364Z" }, ] [[package]] @@ -5495,47 +5150,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/73/cd/29cee6007bddf7a834e6cd6f536754c0535fcb939d384f0f37a38b1cddb8/ormsgpack-1.12.2-cp314-cp314t-win_amd64.whl", hash = "sha256:837dd316584485b72ef451d08dd3e96c4a11d12e4963aedb40e08f89685d8ec2", size = 117232, upload-time = "2026-01-18T20:55:45.448Z" }, ] -[[package]] -name = "packaging" -version = "25.0" -source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14'", - "python_full_version == '3.13.*'", - "python_full_version == '3.12.*'", - "python_full_version == '3.11.*'", - "python_full_version < '3.11'", -] -sdist = { url = "https://files.pythonhosted.org/packages/a1/d4/1fc4078c65507b51b96ca8f8c3ba19e6a61c8253c72794544580a7b6c24d/packaging-25.0.tar.gz", hash = "sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f", size = 165727, upload-time = "2025-04-19T11:48:59.673Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/20/12/38679034af332785aac8774540895e234f4d07f7545804097de4b666afd8/packaging-25.0-py3-none-any.whl", hash = "sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484", size = 66469, upload-time = "2025-04-19T11:48:57.875Z" }, -] - [[package]] name = "packaging" version = "26.2" source = { registry = "https://pypi.org/simple" } -resolution-markers = [ - "python_full_version >= '3.14'", - "python_full_version == '3.13.*'", - "python_full_version == '3.12.*'", - "python_full_version == '3.11.*'", - "python_full_version < '3.11'", -] sdist = { url = "https://files.pythonhosted.org/packages/d7/f1/e7a6dd94a8d4a5626c03e4e99c87f241ba9e350cd9e6d75123f992427270/packaging-26.2.tar.gz", hash = "sha256:ff452ff5a3e828ce110190feff1178bb1f2ea2281fa2075aadb987c2fb221661", size = 228134, upload-time = "2026-04-24T20:15:23.917Z" } wheels = [ { url = "https://files.pythonhosted.org/packages/df/b2/87e62e8c3e2f4b32e5fe99e0b86d576da1312593b39f47d8ceef365e95ed/packaging-26.2-py3-none-any.whl", hash = "sha256:5fc45236b9446107ff2415ce77c807cee2862cb6fac22b8a73826d0693b0980e", size = 100195, upload-time = "2026-04-24T20:15:22.081Z" }, ] -[[package]] -name = "pathable" -version = "0.6.0" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/66/f3/5a20387de9bcd0607871bfc2198ee0e15836da7baa4592ccd7f24c27c986/pathable-0.6.0.tar.gz", hash = "sha256:6404b8b82aef5ff0fd478934137128b99b12212ba35afdde5525ca4f8388ea58", size = 18970, upload-time = "2026-05-19T18:15:11.911Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/a2/e8/6d75ffd9784bce2e93d1ae4415649427e39a53bb172d4672b2b59c6f0a7b/pathable-0.6.0-py3-none-any.whl", hash = "sha256:82c4ca6c98c502ad12e0d4e9779b6210afee93c38990988c8c5d1b49bdcdf566", size = 18983, upload-time = "2026-05-19T18:15:10.728Z" }, -] - [[package]] name = "pathspec" version = "1.1.1" @@ -6037,46 +5660,39 @@ email = [ [[package]] name = "pydantic-ai" -version = "1.107.0" +version = "2.1.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "pydantic-ai-slim", extra = ["ag-ui", "anthropic", "bedrock", "cli", "cohere", "evals", "fastmcp", "google", "groq", "huggingface", "logfire", "mcp", "mistral", "openai", "retries", "spec", "temporal", "ui", "vertexai", "xai"], marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, + { name = "pydantic-ai-slim", extra = ["anthropic", "cli", "evals", "google", "logfire", "mcp", "openai", "retries", "web"], marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/17/71/7132293bc7ce791d8f3ee7f56b696b216a104bb30a08113f7b3db30a0c9a/pydantic_ai-1.107.0.tar.gz", hash = "sha256:254496d18451b2750a4dddc2591c6c42f25dd223d02ca4252812ab06e75f1044", size = 18414, upload-time = "2026-06-10T14:53:08.678Z" } +sdist = { url = "https://files.pythonhosted.org/packages/14/2e/e393160043ee999c501c95f27dcb6439eec3092eca7d75b94f06165905a8/pydantic_ai-2.1.0.tar.gz", hash = "sha256:6279657f7640df3765a9faab9d9fa25b33c58caf20d67c6189dd5469dbbbb782", size = 18451, upload-time = "2026-06-29T09:51:16.374Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/65/38/db37ab59fced191a75babbbbe99470e512c91fe730b27d113e3280fdbe44/pydantic_ai-1.107.0-py3-none-any.whl", hash = "sha256:e031880b44ad7ce3836b2f6aa8ce2a0bd733cdb0b89a34adba647e96ddcba788", size = 7588, upload-time = "2026-06-10T14:53:00.57Z" }, + { url = "https://files.pythonhosted.org/packages/c7/dc/7cfa843db74fefdba995a2e21fe602e725e2ba77b0d7bc402bc62c1bf2d7/pydantic_ai-2.1.0-py3-none-any.whl", hash = "sha256:001272126e78f982805b1a4ac7e7805da10c88c4f28f9e4b905e923cfc1192d5", size = 7700, upload-time = "2026-06-29T09:51:07.83Z" }, ] [[package]] name = "pydantic-ai-slim" -version = "1.107.0" +version = "2.1.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "exceptiongroup", marker = "python_full_version < '3.11'" }, { name = "genai-prices" }, { name = "griffelib" }, { name = "httpx" }, - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, { name = "pydantic" }, { name = "pydantic-graph" }, { name = "typing-inspection" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/4c/26/ced63dfaabbc77f3beb86d59689cdea748e7ccffb6b419dbaf4780f211e8/pydantic_ai_slim-1.107.0.tar.gz", hash = "sha256:4616f689a92fcfecfecf2a7af27aca22f139a873cf6d7a8929eaeee9c0eedbb4", size = 779902, upload-time = "2026-06-10T14:53:10.574Z" } +sdist = { url = "https://files.pythonhosted.org/packages/ca/d1/78fd15c9c68b95ac0bec2d2afe22feb3b2f46e4b8e3a6dd1cead61cde434/pydantic_ai_slim-2.1.0.tar.gz", hash = "sha256:f79dca2429dbb9d2e32a0e2c613cfb9b9d6f0dc81d42cff8a5c81ede8ca0a6c7", size = 738698, upload-time = "2026-06-29T09:51:18.634Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/15/57/71044e17f931b08cc3930bc0fe5a1e1fd37fa474ae826be004729ef1cb4a/pydantic_ai_slim-1.107.0-py3-none-any.whl", hash = "sha256:1af49bbae06a6c598f72c54d4734ba377100cac493c9a05fa8e089bebeae0da6", size = 964046, upload-time = "2026-06-10T14:53:03.333Z" }, + { url = "https://files.pythonhosted.org/packages/5e/c7/b531cf65a1f8b221ab39739a16fe08f7b6a56fd24db875b9c33010320c9c/pydantic_ai_slim-2.1.0-py3-none-any.whl", hash = "sha256:2afda56459606226113ab433ee659aac7ff29bb66feefa716c67144bd82e5ce2", size = 910109, upload-time = "2026-06-29T09:51:11.016Z" }, ] [package.optional-dependencies] -ag-ui = [ - { name = "ag-ui-protocol" }, - { name = "starlette" }, -] anthropic = [ { name = "anthropic" }, ] -bedrock = [ - { name = "boto3" }, -] cli = [ { name = "argcomplete" }, { name = "prompt-toolkit" }, @@ -6084,34 +5700,18 @@ cli = [ { name = "pyyaml" }, { name = "rich", version = "14.3.4", source = { registry = "https://pypi.org/simple" } }, ] -cohere = [ - { name = "cohere", marker = "sys_platform != 'emscripten'" }, -] evals = [ { name = "pydantic-evals" }, ] -fastmcp = [ - { name = "fastmcp" }, -] google = [ { name = "google-genai" }, ] -groq = [ - { name = "groq" }, -] -huggingface = [ - { name = "hf-xet", version = "1.4.3", source = { registry = "https://pypi.org/simple" }, marker = "platform_machine == 'AMD64' or platform_machine == 'aarch64' or platform_machine == 'amd64' or platform_machine == 'arm64' or platform_machine == 'x86_64'" }, - { name = "huggingface-hub", version = "1.18.0", source = { registry = "https://pypi.org/simple" } }, -] logfire = [ { name = "logfire", extra = ["httpx"], marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, ] mcp = [ { name = "fastmcp-slim", extra = ["client"], marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, ] -mistral = [ - { name = "mistralai" }, -] openai = [ { name = "openai", version = "2.32.0", source = { registry = "https://pypi.org/simple" } }, { name = "tiktoken" }, @@ -6119,22 +5719,10 @@ openai = [ retries = [ { name = "tenacity" }, ] -spec = [ - { name = "pydantic-handlebars" }, - { name = "pyyaml" }, -] -temporal = [ - { name = "temporalio" }, -] -ui = [ +web = [ + { name = "httpx" }, { name = "starlette" }, -] -vertexai = [ - { name = "google-auth" }, - { name = "requests" }, -] -xai = [ - { name = "xai-sdk" }, + { name = "uvicorn" }, ] [[package]] @@ -6255,7 +5843,7 @@ wheels = [ [[package]] name = "pydantic-evals" -version = "1.107.0" +version = "2.1.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "anyio" }, @@ -6265,14 +5853,14 @@ dependencies = [ { name = "pyyaml" }, { name = "rich", version = "14.3.4", source = { registry = "https://pypi.org/simple" } }, ] -sdist = { url = "https://files.pythonhosted.org/packages/26/ad/f33306cf668d33cabce8af5e82b58ae367cc8422a2078c2df13327c13532/pydantic_evals-1.107.0.tar.gz", hash = "sha256:153378eda4847d48ca5e6b995e6221e5f0e4f4641771a1eed244fa2065923b27", size = 78546, upload-time = "2026-06-10T14:53:12.01Z" } +sdist = { url = "https://files.pythonhosted.org/packages/7b/d6/d2a315322052fa849cb1008c18ac43688e06e1059573cd424cfd20d49be5/pydantic_evals-2.1.0.tar.gz", hash = "sha256:58e72ceba61ba673f074b58f057413dc8d3393720767c89969681d2e4f4067a4", size = 76016, upload-time = "2026-06-29T09:51:19.798Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/23/ea/ecdaab037479f3b26c0efd47598f7caaad506fc53837196c1cf7e4701263/pydantic_evals-1.107.0-py3-none-any.whl", hash = "sha256:2df2f6deb82226f0404137ebecf9389c2270e08e30c066e239ae9090173826ec", size = 93586, upload-time = "2026-06-10T14:53:05.362Z" }, + { url = "https://files.pythonhosted.org/packages/80/7b/59f9d4f865e2f518179a3a42986e4e8785b70c98ec180c8da10fd78c02a6/pydantic_evals-2.1.0-py3-none-any.whl", hash = "sha256:6c9fc370808d883c20477ce69a6d6bc0b9c5a8d3dab66be5dd85d960a3f88d23", size = 90590, upload-time = "2026-06-29T09:51:12.816Z" }, ] [[package]] name = "pydantic-graph" -version = "1.107.0" +version = "2.1.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "httpx" }, @@ -6280,21 +5868,9 @@ dependencies = [ { name = "pydantic" }, { name = "typing-inspection" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/dd/c3/6e8c2d13b8701041f1b3eac5deb41f25d4dbfa479a190d5c6becc23f2a49/pydantic_graph-1.107.0.tar.gz", hash = "sha256:278dd89b3e33f3a2963ac949f27a53aef705c5d883a8ce5d06d23e6e3cfbd972", size = 62564, upload-time = "2026-06-10T14:53:13.366Z" } +sdist = { url = "https://files.pythonhosted.org/packages/39/20/018532c826aba3c29ffc37bda46c20f3db4584bb555a8c7dc2769866267d/pydantic_graph-2.1.0.tar.gz", hash = "sha256:36ed6af24543421fb628fee593ccf5553a286c1dd1677018f5064a4e44c4daba", size = 43052, upload-time = "2026-06-29T09:51:20.832Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/fc/72/621556e3f5068400d43a0375d38e5963de30256eaa5a702aba12e82ed0ff/pydantic_graph-1.107.0-py3-none-any.whl", hash = "sha256:71add94fe7e14c703977a895117c475aae6c0b02a774a036c4d00d9a63c78b00", size = 80106, upload-time = "2026-06-10T14:53:06.543Z" }, -] - -[[package]] -name = "pydantic-handlebars" -version = "0.2.1" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "pydantic" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/96/73/e55a1fe1a8788a5fa82d9209e796f4111e28f2d2fecab7173aa6d80516ad/pydantic_handlebars-0.2.1.tar.gz", hash = "sha256:d4124cfbf7d6e3bded9331a08ccccf6f29f3e3a93665b35b5d6061650aeeb49f", size = 176949, upload-time = "2026-05-25T01:24:38.354Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/55/11/364bc401f1d8fdb3947079fc43ffdfbfc9132d065981a03a95d2e87440c4/pydantic_handlebars-0.2.1-py3-none-any.whl", hash = "sha256:c713427d6498cf4b66814447d54753a2748f8a8d3a9f00c194192ddb3df61e52", size = 50476, upload-time = "2026-05-25T01:24:37.104Z" }, + { url = "https://files.pythonhosted.org/packages/42/a8/7f32bdeda6cff28652bba1c21ab2155c81d1733abd4b8bfef46a26e8d3fe/pydantic_graph-2.1.0-py3-none-any.whl", hash = "sha256:bae1e99829abf590a8693442ba5693ace38d2d93a80ae48be55c610a503e3709", size = 50772, upload-time = "2026-06-29T09:51:14.161Z" }, ] [[package]] @@ -6420,8 +5996,7 @@ dependencies = [ { name = "colorama", marker = "sys_platform == 'win32' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "exceptiongroup", marker = "python_full_version < '3.11' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, { name = "iniconfig" }, - { name = "packaging", version = "25.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "packaging", version = "26.2", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-agentscope' or extra == 'group-10-braintrust-test-agno' or extra == 'group-10-braintrust-test-crewai' or extra == 'group-10-braintrust-test-langchain' or extra == 'group-10-braintrust-test-litellm' or extra == 'group-10-braintrust-test-livekit-agents' or extra == 'group-10-braintrust-test-openai-agents' or extra == 'group-10-braintrust-test-pydantic-ai-logfire' or extra == 'group-10-braintrust-test-strands' or extra != 'group-10-braintrust-lint'" }, + { name = "packaging" }, { name = "pluggy" }, { name = "pygments" }, { name = "tomli", marker = "python_full_version < '3.11' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, @@ -6864,19 +6439,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/82/3b/64d4899d73f91ba49a8c18a8ff3f0ea8f1c1d75481760df8c68ef5235bf5/rich-15.0.0-py3-none-any.whl", hash = "sha256:33bd4ef74232fb73fe9279a257718407f169c09b78a87ad3d296f548e27de0bb", size = 310654, upload-time = "2026-04-12T08:24:02.83Z" }, ] -[[package]] -name = "rich-rst" -version = "2.0.2" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "pygments" }, - { name = "rich", version = "14.3.4", source = { registry = "https://pypi.org/simple" } }, -] -sdist = { url = "https://files.pythonhosted.org/packages/0b/40/905f612e7bf105d7efefa923542e0c85b731cf29bcc1864331427dbc52b8/rich_rst-2.0.2.tar.gz", hash = "sha256:664a669801695c5a126151338f309ce3ea3e0ea081c89a4130b8a4f659911ed9", size = 300822, upload-time = "2026-06-25T17:24:14.298Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/cf/5f/62fdf0f574ec75af7ada8ad27c1a67e3723d491143bc88d5371c25673949/rich_rst-2.0.2-py3-none-any.whl", hash = "sha256:7bc2923929c9bbc61aadfef2069b742446823b306af84cf9e0f56b965a3d3035", size = 273082, upload-time = "2026-06-25T17:24:09.557Z" }, -] - [[package]] name = "rpds-py" version = "0.30.0" @@ -7356,9 +6918,9 @@ dependencies = [ { name = "docstring-parser" }, { name = "jsonschema" }, { name = "mcp" }, - { name = "opentelemetry-api", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-api", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, { name = "opentelemetry-instrumentation-threading" }, - { name = "opentelemetry-sdk", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, + { name = "opentelemetry-sdk", version = "1.40.0", source = { registry = "https://pypi.org/simple" } }, { name = "pydantic" }, { name = "pyyaml" }, { name = "typing-extensions" }, @@ -7495,8 +7057,7 @@ name = "tokenizers" version = "0.23.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "huggingface-hub", version = "1.18.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-lint' or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-crewai') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands')" }, - { name = "huggingface-hub", version = "1.21.0", source = { registry = "https://pypi.org/simple" }, marker = "extra == 'group-10-braintrust-test-crewai' or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agentscope') or (extra == 'group-10-braintrust-lint' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agentscope' and extra == 'group-10-braintrust-test-agno') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agno' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-langchain' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-litellm' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-test-livekit-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-openai-agents' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-pydantic-ai-logfire') or (extra == 'group-10-braintrust-lint' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-langchain') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-litellm') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-livekit-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-openai-agents') or (extra == 'group-10-braintrust-test-agentscope' and extra != 'group-10-braintrust-test-crewai' and extra == 'group-10-braintrust-test-strands')" }, + { name = "huggingface-hub" }, ] sdist = { url = "https://files.pythonhosted.org/packages/c1/60/21f715d9faba5f5407ff759472ade058ec4a507ad62bcea47cb847239a73/tokenizers-0.23.1.tar.gz", hash = "sha256:1feeeadf865a7915adc25445dea30e9933e593c31bb96c277cee36de227c8bfa", size = 365748, upload-time = "2026-04-27T14:43:25.606Z" } wheels = [ @@ -7735,15 +7296,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/42/28/fc144409c71569e928585f8f3c629d80d1ca3ef40175e9222f01588f98c9/tzlocal-5.4.3-py3-none-any.whl", hash = "sha256:24ce97bb58e2a973f7640ec2553ab4e6f6d5a0d0d1aa9dc43bca21d89e1feb82", size = 18039, upload-time = "2026-06-17T04:17:40.027Z" }, ] -[[package]] -name = "uncalled-for" -version = "0.3.2" -source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/b5/82/345cc927f7fbdae6065e7768759932fcc827fc20b29b45dfbafa2f1f7da4/uncalled_for-0.3.2.tar.gz", hash = "sha256:89f5dbcd71e2b8f47c030b1fa302e6cce2ec795d1ac565eeb6525c5fe55cb8a2", size = 50032, upload-time = "2026-05-06T13:38:25.204Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/3b/25/2c87754f3a9e692315f7b811244090e68f362979fc8886b3fbd2985a1d8c/uncalled_for-0.3.2-py3-none-any.whl", hash = "sha256:0ff60b142c7d1f8070bde9d42afaa70aedc77dcc10998c227687e9c15713418e", size = 11444, upload-time = "2026-05-06T13:38:24.025Z" }, -] - [[package]] name = "urllib3" version = "2.7.0" @@ -8311,25 +7863,6 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/a4/f5/10b68b7b1544245097b2a1b8238f66f2fc6dcaeb24ba5d917f52bd2eed4f/wsproto-1.3.2-py3-none-any.whl", hash = "sha256:61eea322cdf56e8cc904bd3ad7573359a242ba65688716b0710a5eb12beab584", size = 24405, upload-time = "2025-11-20T18:18:00.454Z" }, ] -[[package]] -name = "xai-sdk" -version = "1.17.0" -source = { registry = "https://pypi.org/simple" } -dependencies = [ - { name = "aiohttp" }, - { name = "googleapis-common-protos" }, - { name = "grpcio" }, - { name = "opentelemetry-sdk", version = "1.39.1", source = { registry = "https://pypi.org/simple" } }, - { name = "packaging", version = "25.0", source = { registry = "https://pypi.org/simple" } }, - { name = "protobuf", version = "5.29.6", source = { registry = "https://pypi.org/simple" } }, - { name = "pydantic" }, - { name = "requests" }, -] -sdist = { url = "https://files.pythonhosted.org/packages/0d/79/722beabb2ffbac413e4e776230ee56db2710e83c02f038f5769f9da748c1/xai_sdk-1.17.0.tar.gz", hash = "sha256:ec695ad8b459a4080c01f6e7bb8abf38ed6a4ec69532bfdd73c4de14db1d485c", size = 452803, upload-time = "2026-06-12T03:44:13.329Z" } -wheels = [ - { url = "https://files.pythonhosted.org/packages/d9/ad/99ad3209727f6e0e280681c05aa6a49feb130926d939bdb4767ee825b0da/xai_sdk-1.17.0-py3-none-any.whl", hash = "sha256:88a6a53181fa13d55662e3296dafd2a3cf258803450b7d82c7318b8c64e8a485", size = 273997, upload-time = "2026-06-12T03:44:11.828Z" }, -] - [[package]] name = "xxhash" version = "3.8.0"