---
version: 2
interactions:
- id: 0
  request:
    proto: HTTP/1.1
    proto_major: 1
    proto_minor: 1
    content_length: 631
    host: ""
    body: '{"messages":[{"content":"Generate information about a person named Alice who is 30 years old and lives in Paris.","role":"user"}],"model":"grok-code-fast-1","max_tokens":4000,"tool_choice":{"function":{"name":"Person"},"type":"function"},"tools":[{"function":{"name":"Person","strict":false,"description":"A person with name, age, and city","parameters":{"properties":{"age":{"description":"The person''s age","type":"integer"},"city":{"description":"The city where the person lives","type":"string"},"name":{"description":"The person''s name","type":"string"}},"required":["name","age","city"],"type":"object"}},"type":"function"}]}'
    headers:
      Accept:
      - application/json
      Content-Type:
      - application/json
      User-Agent:
      - Charm-Fantasy/0.12.2 (https://charm.land/fantasy)
    url: https://api.x.ai/v1/chat/completions
    method: POST
  response:
    proto: HTTP/2.0
    proto_major: 2
    proto_minor: 0
    content_length: -1
    uncompressed: true
    body: '{"id":"abf5cc8a-cbff-c3b8-aa7d-b8751de51020","object":"chat.completion","created":1773345657,"model":"grok-code-fast-1","choices":[{"index":0,"message":{"role":"assistant","content":"","reasoning_content":"## Processing user request  \n- The user asked for information about Alice, who is 30 years old and lives in Paris.  \n- Found a tool called \"Person\" that matches the request, with parameters for name, age, and city.  \n\n## Structuring tool call  \n- The tool requires parameters in the order: age, city, name, based on function definitions.  \n- Will call the tool with parameters: age 30, city Paris, name Alice, to generate the information.","tool_calls":[{"id":"call_22831808","function":{"name":"Person","arguments":"{\"age\":30,\"city\":\"Paris\",\"name\":\"Alice\"}"},"type":"function"}],"refusal":null},"finish_reason":"tool_calls"}],"usage":{"prompt_tokens":429,"completion_tokens":44,"total_tokens":975,"prompt_tokens_details":{"text_tokens":429,"audio_tokens":0,"image_tokens":0,"cached_tokens":192},"completion_tokens_details":{"reasoning_tokens":502,"audio_tokens":0,"accepted_prediction_tokens":0,"rejected_prediction_tokens":0},"num_sources_used":0,"cost_in_usd_ticks":8702400},"system_fingerprint":"fp_99052e9f23"}'
    headers:
      Content-Type:
      - application/json
    status: 200 OK
    code: 200
    duration: 12.069042709s
