fix: ensure token usage recording, validate response model on stream
Some checks failed
Build uv cache / build-cache (3.10) (push) Has been cancelled
Build uv cache / build-cache (3.11) (push) Has been cancelled
Build uv cache / build-cache (3.12) (push) Has been cancelled
CodeQL Advanced / Analyze (actions) (push) Has been cancelled
CodeQL Advanced / Analyze (python) (push) Has been cancelled
Notify Downstream / notify-downstream (push) Has been cancelled
Check Documentation Broken Links / Check broken links (push) Has been cancelled
Build uv cache / build-cache (3.13) (push) Has been cancelled

This commit is contained in:
Greyson LaLonde
2025-12-10 20:32:10 -05:00
committed by GitHub
parent 8e99d490b0
commit bdafe0fac7
312 changed files with 7846 additions and 33124 deletions

View File

@@ -1,23 +1,7 @@
interactions:
- request:
body: '{"messages":[{"role":"system","content":"You are test role. test backstory\nYour
personal goal is: test goal\nYou ONLY have access to the following tools, and
should NEVER make up tools that are not listed here:\n\nTool Name: multiplier\nTool
Arguments: {''first_number'': {''description'': None, ''type'': ''int''}, ''second_number'':
{''description'': None, ''type'': ''int''}}\nTool Description: Useful for when
you need to multiply two numbers together.\n\nIMPORTANT: Use the following format
in your response:\n\n```\nThought: you should always think about what to do\nAction:
the action to take, only one name of [multiplier], just the name, exactly as
it''s written.\nAction Input: the input to the action, just a simple JSON object,
enclosed in curly braces, using \" to wrap keys and values.\nObservation: the
result of the action\n```\n\nOnce all necessary information is gathered, return
the following format:\n\n```\nThought: I now know the final answer\nFinal Answer:
the final answer to the original input question\n```"},{"role":"user","content":"\nCurrent
Task: What is 3 times 4?\n\nThis is the expected criteria for your final answer:
The result of the multiplication.\nyou MUST return the actual complete content
as the final answer, not a summary.\n\nBegin! This is VERY important to you,
use the tools available and give your best Final Answer, your job depends on
it!\n\nThought:"}],"model":"gpt-4.1-mini"}'
body: '{"messages":[{"role":"system","content":"You are test role. test backstory\nYour personal goal is: test goal\nYou ONLY have access to the following tools, and should NEVER make up tools that are not listed here:\n\nTool Name: multiplier\nTool Arguments: {''first_number'': {''description'': None, ''type'': ''int''}, ''second_number'': {''description'': None, ''type'': ''int''}}\nTool Description: Useful for when you need to multiply two numbers together.\n\nIMPORTANT: Use the following format in your response:\n\n```\nThought: you should always think about what to do\nAction: the action to take, only one name of [multiplier], just the name, exactly as it''s written.\nAction Input: the input to the action, just a simple JSON object, enclosed in curly braces, using \" to wrap keys and values.\nObservation: the result of the action\n```\n\nOnce all necessary information is gathered, return the following format:\n\n```\nThought: I now know the final answer\nFinal Answer: the final
answer to the original input question\n```"},{"role":"user","content":"\nCurrent Task: What is 3 times 4?\n\nThis is the expected criteria for your final answer: The result of the multiplication.\nyou MUST return the actual complete content as the final answer, not a summary.\n\nBegin! This is VERY important to you, use the tools available and give your best Final Answer, your job depends on it!\n\nThought:"}],"model":"gpt-4.1-mini"}'
headers:
User-Agent:
- X-USER-AGENT-XXX
@@ -57,23 +41,13 @@ interactions:
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAAwAAAP//jFNNj9MwEL3nV4x8bqq0DS3NDbFIrIQ4IT5EVolrTxLvOrZlT6BL1f+O
kn4kXUDi4sN788Zv3tiHCIApyTJgouEkWqfjt493/ol/cO829S+//8Ltx/ruq32vPn/Tds9mvcLu
HlHQRTUXtnUaSVlzooVHTth3XWzW6ettmmzXA9FaibqX1Y7idL6IW2VUvEyWr+IkjRfpWd5YJTCw
DL5HAACH4eyNGol7lkEyuyAthsBrZNm1CIB5q3uE8RBUIG6IzUZSWENoBu9lWebmU2O7uqEM7sEg
SiALbadJOf0MK+BGQtpjlTISqEHgJvxEP8/NG9EPnF2qFfoLBvfGdZTBIWeV8oEK07U79DnLYDWD
nAUU1sgJmh5zU5bl1KbHqgu8z8p0Wk8Ibowl3l8zBPRwZo7XSLStnbe78ELKKmVUaAqPPFjTjx/I
OjawxwjgYYi+u0mTOW9bRwXZJxyuW27TUz82rnxk0/NeGFniesRXq4vqpl8hkbjSYbI8JrhoUI7S
cdO8k8pOiGgy9Z9u/tb7NLky9f+0Hwkh0BHKwnmUStxOPJZ57H/Ev8quKQ+GWUD/QwksSKHvNyGx
4p0+PVMWngNhW1TK1OidV6e3WrlimW4WidhUyZpFx+g3AAAA//8DAOjUFQa6AwAA
string: "{\n \"id\": \"chatcmpl-CjDrkaLpE7gzrxWaoNgDXoHiVYlox\",\n \"object\": \"chat.completion\",\n \"created\": 1764894096,\n \"model\": \"gpt-4.1-mini-2025-04-14\",\n \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": \"assistant\",\n \"content\": \"```\\nThought: I need to multiply 3 and 4 to find the answer.\\nAction: multiplier\\nAction Input: {\\\"first_number\\\": 3, \\\"second_number\\\": 4}\\n```\",\n \"refusal\": null,\n \"annotations\": []\n },\n \"logprobs\": null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 294,\n \"completion_tokens\": 40,\n \"total_tokens\": 334,\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_24710c7f06\"\n}\n"
headers:
CF-RAY:
- CF-RAY-XXX
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
@@ -124,26 +98,8 @@ interactions:
code: 200
message: OK
- request:
body: '{"messages":[{"role":"system","content":"You are test role. test backstory\nYour
personal goal is: test goal\nYou ONLY have access to the following tools, and
should NEVER make up tools that are not listed here:\n\nTool Name: multiplier\nTool
Arguments: {''first_number'': {''description'': None, ''type'': ''int''}, ''second_number'':
{''description'': None, ''type'': ''int''}}\nTool Description: Useful for when
you need to multiply two numbers together.\n\nIMPORTANT: Use the following format
in your response:\n\n```\nThought: you should always think about what to do\nAction:
the action to take, only one name of [multiplier], just the name, exactly as
it''s written.\nAction Input: the input to the action, just a simple JSON object,
enclosed in curly braces, using \" to wrap keys and values.\nObservation: the
result of the action\n```\n\nOnce all necessary information is gathered, return
the following format:\n\n```\nThought: I now know the final answer\nFinal Answer:
the final answer to the original input question\n```"},{"role":"user","content":"\nCurrent
Task: What is 3 times 4?\n\nThis is the expected criteria for your final answer:
The result of the multiplication.\nyou MUST return the actual complete content
as the final answer, not a summary.\n\nBegin! This is VERY important to you,
use the tools available and give your best Final Answer, your job depends on
it!\n\nThought:"},{"role":"assistant","content":"```\nThought: I need to multiply
3 and 4 to find the answer.\nAction: multiplier\nAction Input: {\"first_number\":
3, \"second_number\": 4}\n```\nObservation: 12"}],"model":"gpt-4.1-mini"}'
body: '{"messages":[{"role":"system","content":"You are test role. test backstory\nYour personal goal is: test goal\nYou ONLY have access to the following tools, and should NEVER make up tools that are not listed here:\n\nTool Name: multiplier\nTool Arguments: {''first_number'': {''description'': None, ''type'': ''int''}, ''second_number'': {''description'': None, ''type'': ''int''}}\nTool Description: Useful for when you need to multiply two numbers together.\n\nIMPORTANT: Use the following format in your response:\n\n```\nThought: you should always think about what to do\nAction: the action to take, only one name of [multiplier], just the name, exactly as it''s written.\nAction Input: the input to the action, just a simple JSON object, enclosed in curly braces, using \" to wrap keys and values.\nObservation: the result of the action\n```\n\nOnce all necessary information is gathered, return the following format:\n\n```\nThought: I now know the final answer\nFinal Answer: the final
answer to the original input question\n```"},{"role":"user","content":"\nCurrent Task: What is 3 times 4?\n\nThis is the expected criteria for your final answer: The result of the multiplication.\nyou MUST return the actual complete content as the final answer, not a summary.\n\nBegin! This is VERY important to you, use the tools available and give your best Final Answer, your job depends on it!\n\nThought:"},{"role":"assistant","content":"```\nThought: I need to multiply 3 and 4 to find the answer.\nAction: multiplier\nAction Input: {\"first_number\": 3, \"second_number\": 4}\n```\nObservation: 12"}],"model":"gpt-4.1-mini"}'
headers:
User-Agent:
- X-USER-AGENT-XXX
@@ -185,23 +141,12 @@ interactions:
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAAwAAAP//jFJBbtswELzrFQuerUByZDvRLW1RID304PZWBxJDrSQ6FEmQq6ZB4L8X
pB1LSVMgFwLk7Axndvc5AWCyYSUw0XMSg1Xp5/0Xp7Bdfdp2+ydfYPct777bbH/7Y7XdskVgmPs9
CnphXQgzWIUkjT7CwiEnDKr5Zl1cXRfZ9SYCg2lQBVpnKS0u8nSQWqbLbLlKsyLNixO9N1KgZyX8
SgAAnuMZjOoG/7ASssXLy4De8w5ZeS4CYM6o8MK499IT18QWEyiMJtTRe13XO/2zN2PXUwm3oM0j
PISDeoRWaq6Aa/+Ibqe/xttNvJWQL3e6ruu5rMN29Dxk06NSM4BrbYiH3sRAdyfkcI6gTGedufdv
qKyVWvq+csi90cGuJ2NZRA8JwF1s1fgqPbPODJYqMg8Yv7ssLo96bBrRhOZXJ5AMcTVjrfPFO3pV
g8Sl8rNmM8FFj81EnSbDx0aaGZDMUv/r5j3tY3Kpu4/IT4AQaAmbyjpspHideCpzGDb4f2XnLkfD
zKP7LQVWJNGFSTTY8lEd14r5J084VK3UHTrr5HG3Wlsti02eiU2brVlySP4CAAD//wMA9GwtF2oD
AAA=
string: "{\n \"id\": \"chatcmpl-CjDrlef5BRgjys4egJ1gNp0jIS5RR\",\n \"object\": \"chat.completion\",\n \"created\": 1764894097,\n \"model\": \"gpt-4.1-mini-2025-04-14\",\n \"choices\": [\n {\n \"index\": 0,\n \"message\": {\n \"role\": \"assistant\",\n \"content\": \"```\\nThought: I now know the final answer\\nFinal Answer: 12\\n```\",\n \"refusal\": null,\n \"annotations\": []\n },\n \"logprobs\": null,\n \"finish_reason\": \"stop\"\n }\n ],\n \"usage\": {\n \"prompt_tokens\": 343,\n \"completion_tokens\": 18,\n \"total_tokens\": 361,\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_24710c7f06\"\n}\n"
headers:
CF-RAY:
- CF-RAY-XXX
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date: