pydantic-ai 0.0.35__tar.gz → 0.0.37__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pydantic-ai might be problematic. Click here for more details.

Files changed (78) hide show
  1. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/PKG-INFO +3 -3
  2. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/pyproject.toml +12 -5
  3. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/json_body_serializer.py +1 -1
  4. pydantic_ai-0.0.37/tests/models/cassettes/test_bedrock/test_bedrock_model.yaml +44 -0
  5. pydantic_ai-0.0.37/tests/models/cassettes/test_bedrock/test_bedrock_model_anthropic_model_without_tools.yaml +43 -0
  6. pydantic_ai-0.0.37/tests/models/cassettes/test_bedrock/test_bedrock_model_iter_stream.yaml +196 -0
  7. pydantic_ai-0.0.37/tests/models/cassettes/test_bedrock/test_bedrock_model_max_tokens.yaml +43 -0
  8. pydantic_ai-0.0.37/tests/models/cassettes/test_bedrock/test_bedrock_model_retry.yaml +102 -0
  9. pydantic_ai-0.0.37/tests/models/cassettes/test_bedrock/test_bedrock_model_stream.yaml +121 -0
  10. pydantic_ai-0.0.37/tests/models/cassettes/test_bedrock/test_bedrock_model_structured_response.yaml +118 -0
  11. pydantic_ai-0.0.37/tests/models/cassettes/test_bedrock/test_bedrock_model_top_p.yaml +46 -0
  12. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/test_anthropic.py +1 -0
  13. pydantic_ai-0.0.37/tests/models/test_bedrock.py +381 -0
  14. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/test_cohere.py +1 -0
  15. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/test_fallback.py +1 -0
  16. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/test_gemini.py +1 -0
  17. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/test_groq.py +1 -0
  18. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/test_instrumented.py +12 -0
  19. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/test_mistral.py +1 -0
  20. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/test_model.py +11 -3
  21. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/test_model_names.py +3 -0
  22. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/test_openai.py +1 -1
  23. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/test_vertexai.py +4 -4
  24. pydantic_ai-0.0.37/tests/providers/test_bedrock.py +20 -0
  25. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/providers/test_google_vertex.py +29 -2
  26. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/test_agent.py +28 -1
  27. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/test_cli.py +1 -4
  28. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/test_examples.py +1 -0
  29. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/test_tools.py +22 -0
  30. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/.gitignore +0 -0
  31. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/LICENSE +0 -0
  32. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/Makefile +0 -0
  33. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/README.md +0 -0
  34. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/__init__.py +0 -0
  35. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/assets/kiwi.png +0 -0
  36. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/assets/marcelo.mp3 +0 -0
  37. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/conftest.py +0 -0
  38. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/example_modules/README.md +0 -0
  39. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/example_modules/bank_database.py +0 -0
  40. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/example_modules/fake_database.py +0 -0
  41. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/example_modules/weather_service.py +0 -0
  42. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/graph/__init__.py +0 -0
  43. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/graph/test_graph.py +0 -0
  44. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/graph/test_history.py +0 -0
  45. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/graph/test_mermaid.py +0 -0
  46. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/graph/test_state.py +0 -0
  47. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/graph/test_utils.py +0 -0
  48. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/import_examples.py +0 -0
  49. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/__init__.py +0 -0
  50. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/cassettes/test_anthropic/test_image_url_input.yaml +0 -0
  51. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/cassettes/test_anthropic/test_image_url_input_invalid_mime_type.yaml +0 -0
  52. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/cassettes/test_anthropic/test_multiple_parallel_tool_calls.yaml +0 -0
  53. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/cassettes/test_gemini/test_image_as_binary_content_input.yaml +0 -0
  54. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/cassettes/test_gemini/test_image_url_input.yaml +0 -0
  55. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/cassettes/test_groq/test_image_as_binary_content_input.yaml +0 -0
  56. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/cassettes/test_groq/test_image_url_input.yaml +0 -0
  57. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/cassettes/test_openai/test_audio_as_binary_content_input.yaml +0 -0
  58. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/cassettes/test_openai/test_image_as_binary_content_input.yaml +0 -0
  59. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/cassettes/test_openai/test_openai_o1_mini_system_role[developer].yaml +0 -0
  60. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/cassettes/test_openai/test_openai_o1_mini_system_role[system].yaml +0 -0
  61. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/mock_async_stream.py +0 -0
  62. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/test_model_function.py +0 -0
  63. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/models/test_model_test.py +0 -0
  64. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/providers/__init__.py +0 -0
  65. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/providers/test_deepseek.py +0 -0
  66. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/providers/test_google_gla.py +0 -0
  67. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/providers/test_provider_names.py +0 -0
  68. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/test_deps.py +0 -0
  69. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/test_format_as_xml.py +0 -0
  70. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/test_json_body_serializer.py +0 -0
  71. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/test_live.py +0 -0
  72. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/test_logfire.py +0 -0
  73. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/test_parts_manager.py +0 -0
  74. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/test_streaming.py +0 -0
  75. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/test_usage_limits.py +0 -0
  76. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/test_utils.py +0 -0
  77. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/typed_agent.py +0 -0
  78. {pydantic_ai-0.0.35 → pydantic_ai-0.0.37}/tests/typed_graph.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pydantic-ai
3
- Version: 0.0.35
3
+ Version: 0.0.37
4
4
  Summary: Agent Framework / shim to use Pydantic with LLMs
5
5
  Project-URL: Homepage, https://ai.pydantic.dev
6
6
  Project-URL: Source, https://github.com/pydantic/pydantic-ai
@@ -28,9 +28,9 @@ Classifier: Topic :: Internet
28
28
  Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
29
29
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
30
30
  Requires-Python: >=3.9
31
- Requires-Dist: pydantic-ai-slim[anthropic,cli,cohere,groq,mistral,openai,vertexai]==0.0.35
31
+ Requires-Dist: pydantic-ai-slim[anthropic,bedrock,cli,cohere,groq,mistral,openai,vertexai]==0.0.37
32
32
  Provides-Extra: examples
33
- Requires-Dist: pydantic-ai-examples==0.0.35; extra == 'examples'
33
+ Requires-Dist: pydantic-ai-examples==0.0.37; extra == 'examples'
34
34
  Provides-Extra: logfire
35
35
  Requires-Dist: logfire>=2.3; extra == 'logfire'
36
36
  Description-Content-Type: text/markdown
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "pydantic-ai"
7
- version = "0.0.35"
7
+ version = "0.0.37"
8
8
  description = "Agent Framework / shim to use Pydantic with LLMs"
9
9
  authors = [
10
10
  { name = "Samuel Colvin", email = "samuel@pydantic.dev" },
@@ -36,7 +36,7 @@ classifiers = [
36
36
  ]
37
37
  requires-python = ">=3.9"
38
38
  dependencies = [
39
- "pydantic-ai-slim[openai,vertexai,groq,anthropic,mistral,cohere,cli]==0.0.35",
39
+ "pydantic-ai-slim[openai,vertexai,groq,anthropic,mistral,cohere,bedrock,cli]==0.0.37",
40
40
  ]
41
41
 
42
42
  [project.urls]
@@ -46,7 +46,7 @@ Documentation = "https://ai.pydantic.dev"
46
46
  Changelog = "https://github.com/pydantic/pydantic-ai/releases"
47
47
 
48
48
  [project.optional-dependencies]
49
- examples = ["pydantic-ai-examples==0.0.35"]
49
+ examples = ["pydantic-ai-examples==0.0.37"]
50
50
  logfire = ["logfire>=2.3"]
51
51
 
52
52
  [tool.uv.sources]
@@ -89,7 +89,7 @@ include = [
89
89
  ]
90
90
 
91
91
  [tool.ruff.lint]
92
- extend-select = ["Q", "RUF100", "C90", "UP", "I", "D"]
92
+ extend-select = ["Q", "RUF100", "C90", "UP", "I", "D", "TID251"]
93
93
  flake8-quotes = { inline-quotes = "single", multiline-quotes = "double" }
94
94
  isort = { combine-as-imports = true, known-first-party = ["pydantic_ai"] }
95
95
  mccabe = { max-complexity = 15 }
@@ -104,6 +104,9 @@ ignore = [
104
104
  [tool.ruff.lint.pydocstyle]
105
105
  convention = "google"
106
106
 
107
+ [tool.ruff.lint.flake8-tidy-imports.banned-api]
108
+ "typing.TypedDict".msg = "Use typing_extensions.TypedDict instead."
109
+
107
110
  [tool.ruff.format]
108
111
  # don't format python in docstrings, pytest-examples takes care of it
109
112
  docstring-code-format = false
@@ -133,7 +136,11 @@ strict = true
133
136
  [tool.pytest.ini_options]
134
137
  testpaths = "tests"
135
138
  xfail_strict = true
136
- filterwarnings = ["error"]
139
+ filterwarnings = [
140
+ "error",
141
+ # boto3
142
+ "ignore::DeprecationWarning:botocore.*"
143
+ ]
137
144
 
138
145
  # https://coverage.readthedocs.io/en/latest/config.html#run
139
146
  [tool.coverage.run]
@@ -61,7 +61,7 @@ def serialize(cassette_dict: Any):
61
61
  data['headers'] = headers
62
62
 
63
63
  content_type = headers.get('content-type', [])
64
- if any(header.startswith('application/json') for header in content_type):
64
+ if any(isinstance(header, str) and header.startswith('application/json') for header in content_type):
65
65
  # Parse the body as JSON
66
66
  body: Any = data.get('body', None)
67
67
  assert body is not None, data
@@ -0,0 +1,44 @@
1
+ interactions:
2
+ - request:
3
+ body: '{"messages": [{"role": "user", "content": [{"text": "Hello!"}]}], "system": [{"text": "You are a chatbot."}], "inferenceConfig":
4
+ {}}'
5
+ headers:
6
+ amz-sdk-invocation-id:
7
+ - !!binary |
8
+ ZGQxNWI1ODItMTk4Yy00NWZhLTllZjYtODFlY2IzZmUxNWM2
9
+ amz-sdk-request:
10
+ - !!binary |
11
+ YXR0ZW1wdD0x
12
+ content-length:
13
+ - '132'
14
+ content-type:
15
+ - !!binary |
16
+ YXBwbGljYXRpb24vanNvbg==
17
+ method: POST
18
+ uri: https://bedrock-runtime.us-east-1.amazonaws.com/model/us.amazon.nova-micro-v1%3A0/converse
19
+ response:
20
+ headers:
21
+ connection:
22
+ - keep-alive
23
+ content-length:
24
+ - '300'
25
+ content-type:
26
+ - application/json
27
+ parsed_body:
28
+ metrics:
29
+ latencyMs: 268
30
+ output:
31
+ message:
32
+ content:
33
+ - text: Hello! How can I assist you today? Whether you have questions, need information, or just want to chat, I'm
34
+ here to help.
35
+ role: assistant
36
+ stopReason: end_turn
37
+ usage:
38
+ inputTokens: 7
39
+ outputTokens: 30
40
+ totalTokens: 37
41
+ status:
42
+ code: 200
43
+ message: OK
44
+ version: 1
@@ -0,0 +1,43 @@
1
+ interactions:
2
+ - request:
3
+ body: '{"messages": [{"role": "user", "content": [{"text": "What is the capital of France?"}]}], "system": [{"text": "You
4
+ are a helpful chatbot."}], "inferenceConfig": {}}'
5
+ headers:
6
+ amz-sdk-invocation-id:
7
+ - !!binary |
8
+ NTc1YTMxYWMtNjI4ZS00NWE4LWE0ZjQtYzk5OTZiNmMyZGJi
9
+ amz-sdk-request:
10
+ - !!binary |
11
+ YXR0ZW1wdD0x
12
+ content-length:
13
+ - '164'
14
+ content-type:
15
+ - !!binary |
16
+ YXBwbGljYXRpb24vanNvbg==
17
+ method: POST
18
+ uri: https://bedrock-runtime.us-east-1.amazonaws.com/model/anthropic.claude-v2/converse
19
+ response:
20
+ headers:
21
+ connection:
22
+ - keep-alive
23
+ content-length:
24
+ - '212'
25
+ content-type:
26
+ - application/json
27
+ parsed_body:
28
+ metrics:
29
+ latencyMs: 707
30
+ output:
31
+ message:
32
+ content:
33
+ - text: Paris is the capital of France.
34
+ role: assistant
35
+ stopReason: end_turn
36
+ usage:
37
+ inputTokens: 23
38
+ outputTokens: 11
39
+ totalTokens: 34
40
+ status:
41
+ code: 200
42
+ message: OK
43
+ version: 1
@@ -0,0 +1,196 @@
1
+ interactions:
2
+ - request:
3
+ body: '{"messages": [{"role": "user", "content": [{"text": "What is the temperature of the capital of France?"}]}], "system":
4
+ [{"text": "You are a helpful chatbot."}], "inferenceConfig": {"topP": 0.5}, "toolConfig": {"tools": [{"toolSpec": {"name":
5
+ "get_capital", "description": "Get the capital of a country.", "inputSchema": {"json": {"properties": {"country": {"description":
6
+ "The country name.", "title": "Country", "type": "string"}}, "required": ["country"], "type": "object", "additionalProperties":
7
+ false}}}}, {"toolSpec": {"name": "get_temperature", "description": "Get the temperature in a city.", "inputSchema":
8
+ {"json": {"properties": {"city": {"description": "The city name.", "title": "City", "type": "string"}}, "required":
9
+ ["city"], "type": "object", "additionalProperties": false}}}}]}}'
10
+ headers:
11
+ amz-sdk-invocation-id:
12
+ - !!binary |
13
+ YzIwMzBiODgtNzk1Yy00M2EzLWI2OTktZTNhMGJiOTBlNDNk
14
+ amz-sdk-request:
15
+ - !!binary |
16
+ YXR0ZW1wdD0x
17
+ content-length:
18
+ - '796'
19
+ content-type:
20
+ - !!binary |
21
+ YXBwbGljYXRpb24vanNvbg==
22
+ method: POST
23
+ uri: https://bedrock-runtime.us-east-1.amazonaws.com/model/us.amazon.nova-micro-v1%3A0/converse-stream
24
+ response:
25
+ body:
26
+ string: !!binary |
27
+ AAAAkAAAAFIxQcihCzpldmVudC10eXBlBwAMbWVzc2FnZVN0YXJ0DTpjb250ZW50LXR5cGUHABBh
28
+ cHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsicCI6ImFiY2RlZmdoaWprbG1u
29
+ b3BxcnMiLCJyb2xlIjoiYXNzaXN0YW50In0RduqwAAAAvAAAAFdFGv4rCzpldmVudC10eXBlBwAR
30
+ Y29udGVudEJsb2NrRGVsdGENOmNvbnRlbnQtdHlwZQcAEGFwcGxpY2F0aW9uL2pzb24NOm1lc3Nh
31
+ Z2UtdHlwZQcABWV2ZW50eyJjb250ZW50QmxvY2tJbmRleCI6MCwiZGVsdGEiOnsidGV4dCI6Ijx0
32
+ aGlua2luZyJ9LCJwIjoiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXoifRvDqgwAAACwAAAAV4Dq
33
+ EyoLOmV2ZW50LXR5cGUHABFjb250ZW50QmxvY2tEZWx0YQ06Y29udGVudC10eXBlBwAQYXBwbGlj
34
+ YXRpb24vanNvbg06bWVzc2FnZS10eXBlBwAFZXZlbnR7ImNvbnRlbnRCbG9ja0luZGV4IjowLCJk
35
+ ZWx0YSI6eyJ0ZXh0IjoiPiBUbyBmaW5kIn0sInAiOiJhYmNkZWZnaGlqa2xtbiJ9ivJR8QAAAOYA
36
+ AABXN7kpQQs6ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja0RlbHRhDTpjb250ZW50LXR5cGUHABBh
37
+ cHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsiY29udGVudEJsb2NrSW5kZXgi
38
+ OjAsImRlbHRhIjp7InRleHQiOiIgdGhlIHRlbXBlcmF0dXJlIn0sInAiOiJhYmNkZWZnaGlqa2xt
39
+ bm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyMzQ1Njc4In1qqvNOAAAA
40
+ 0gAAAFdjGDcHCzpldmVudC10eXBlBwARY29udGVudEJsb2NrRGVsdGENOmNvbnRlbnQtdHlwZQcA
41
+ EGFwcGxpY2F0aW9uL2pzb24NOm1lc3NhZ2UtdHlwZQcABWV2ZW50eyJjb250ZW50QmxvY2tJbmRl
42
+ eCI6MCwiZGVsdGEiOnsidGV4dCI6IiBvZiB0aGUgY2FwaXRhbCBvZiBGcmFuY2UsIn0sInAiOiJh
43
+ YmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFIn3uKUMFAAAAvQAAAFd4etebCzpldmVudC10
44
+ eXBlBwARY29udGVudEJsb2NrRGVsdGENOmNvbnRlbnQtdHlwZQcAEGFwcGxpY2F0aW9uL2pzb24N
45
+ Om1lc3NhZ2UtdHlwZQcABWV2ZW50eyJjb250ZW50QmxvY2tJbmRleCI6MCwiZGVsdGEiOnsidGV4
46
+ dCI6IiBJIG5lZWQgdG8gZmlyc3QifSwicCI6ImFiY2RlZmdoaWprbG1ub3BxcnN0In2Z4zbRAAAA
47
+ 6wAAAFfPKe3wCzpldmVudC10eXBlBwARY29udGVudEJsb2NrRGVsdGENOmNvbnRlbnQtdHlwZQcA
48
+ EGFwcGxpY2F0aW9uL2pzb24NOm1lc3NhZ2UtdHlwZQcABWV2ZW50eyJjb250ZW50QmxvY2tJbmRl
49
+ eCI6MCwiZGVsdGEiOnsidGV4dCI6IiBkZXRlcm1pbmUgdGhlIGNhcGl0YWwifSwicCI6ImFiY2Rl
50
+ ZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVowMTIzNDU2NyJ9
51
+ 5C/XMQAAAKoAAABXqrqcCQs6ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja0RlbHRhDTpjb250ZW50
52
+ LXR5cGUHABBhcHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsiY29udGVudEJs
53
+ b2NrSW5kZXgiOjAsImRlbHRhIjp7InRleHQiOiIgb2YgRnJhbmNlIGFuZCJ9LCJwIjoiYWJjIn0e
54
+ 3HQEAAAAzwAAAFf7aGQ0CzpldmVudC10eXBlBwARY29udGVudEJsb2NrRGVsdGENOmNvbnRlbnQt
55
+ dHlwZQcAEGFwcGxpY2F0aW9uL2pzb24NOm1lc3NhZ2UtdHlwZQcABWV2ZW50eyJjb250ZW50Qmxv
56
+ Y2tJbmRleCI6MCwiZGVsdGEiOnsidGV4dCI6IiB0aGVuIGdldCJ9LCJwIjoiYWJjZGVmZ2hpamts
57
+ bW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTIn1NoRayAAAAvQAAAFd4etebCzpldmVu
58
+ dC10eXBlBwARY29udGVudEJsb2NrRGVsdGENOmNvbnRlbnQtdHlwZQcAEGFwcGxpY2F0aW9uL2pz
59
+ b24NOm1lc3NhZ2UtdHlwZQcABWV2ZW50eyJjb250ZW50QmxvY2tJbmRleCI6MCwiZGVsdGEiOnsi
60
+ dGV4dCI6IiB0aGUgY3VycmVudCJ9LCJwIjoiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4In39D4tq
61
+ AAAA1gAAAFeWmJHHCzpldmVudC10eXBlBwARY29udGVudEJsb2NrRGVsdGENOmNvbnRlbnQtdHlw
62
+ ZQcAEGFwcGxpY2F0aW9uL2pzb24NOm1lc3NhZ2UtdHlwZQcABWV2ZW50eyJjb250ZW50QmxvY2tJ
63
+ bmRleCI6MCwiZGVsdGEiOnsidGV4dCI6IiB0ZW1wZXJhdHVyZSBpbiJ9LCJwIjoiYWJjZGVmZ2hp
64
+ amtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVCJ9+I++0wAAALwAAABXRRr+Kws6
65
+ ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja0RlbHRhDTpjb250ZW50LXR5cGUHABBhcHBsaWNhdGlv
66
+ bi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsiY29udGVudEJsb2NrSW5kZXgiOjAsImRlbHRh
67
+ Ijp7InRleHQiOiIgdGhhdCBjaXR5LiBUaGUifSwicCI6ImFiY2RlZmdoaWprbG1ub3BxcnN0In0z
68
+ tO/rAAAAyAAAAFdJSLgkCzpldmVudC10eXBlBwARY29udGVudEJsb2NrRGVsdGENOmNvbnRlbnQt
69
+ dHlwZQcAEGFwcGxpY2F0aW9uL2pzb24NOm1lc3NhZ2UtdHlwZQcABWV2ZW50eyJjb250ZW50Qmxv
70
+ Y2tJbmRleCI6MCwiZGVsdGEiOnsidGV4dCI6IiBjYXBpdGFsIG9mIEZyYW5jZSBpcyBQYXJpcyJ9
71
+ LCJwIjoiYWJjZGVmZ2hpamtsbW5vcHFyc3QifVuZUssAAACoAAAAV9B6z2kLOmV2ZW50LXR5cGUH
72
+ ABFjb250ZW50QmxvY2tEZWx0YQ06Y29udGVudC10eXBlBwAQYXBwbGljYXRpb24vanNvbg06bWVz
73
+ c2FnZS10eXBlBwAFZXZlbnR7ImNvbnRlbnRCbG9ja0luZGV4IjowLCJkZWx0YSI6eyJ0ZXh0Ijoi
74
+ LiBJIn0sInAiOiJhYmNkZWZnaGlqa2wifbbV2Z8AAADJAAAAV3QokZQLOmV2ZW50LXR5cGUHABFj
75
+ b250ZW50QmxvY2tEZWx0YQ06Y29udGVudC10eXBlBwAQYXBwbGljYXRpb24vanNvbg06bWVzc2Fn
76
+ ZS10eXBlBwAFZXZlbnR7ImNvbnRlbnRCbG9ja0luZGV4IjowLCJkZWx0YSI6eyJ0ZXh0IjoiIHdp
77
+ bGwgdXNlIn0sInAiOiJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE0ifUna
78
+ rKYAAADaAAAAV1NofMYLOmV2ZW50LXR5cGUHABFjb250ZW50QmxvY2tEZWx0YQ06Y29udGVudC10
79
+ eXBlBwAQYXBwbGljYXRpb24vanNvbg06bWVzc2FnZS10eXBlBwAFZXZlbnR7ImNvbnRlbnRCbG9j
80
+ a0luZGV4IjowLCJkZWx0YSI6eyJ0ZXh0IjoiIHRoZSBcImdldF90ZW1wZXJhdHVyZVwiIn0sInAi
81
+ OiJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OTyJ9xiZPLgAAAM4AAABX
82
+ xghNhAs6ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja0RlbHRhDTpjb250ZW50LXR5cGUHABBhcHBs
83
+ aWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsiY29udGVudEJsb2NrSW5kZXgiOjAs
84
+ ImRlbHRhIjp7InRleHQiOiIgdG9vbCB0byBmaW5kIHRoZSBjdXJyZW50IHRlbXBlcmF0dXJlIn0s
85
+ InAiOiJhYmNkZWZnaGlqa2xtbm9wIn1nbMItAAAAqwAAAFeX2rW5CzpldmVudC10eXBlBwARY29u
86
+ dGVudEJsb2NrRGVsdGENOmNvbnRlbnQtdHlwZQcAEGFwcGxpY2F0aW9uL2pzb24NOm1lc3NhZ2Ut
87
+ dHlwZQcABWV2ZW50eyJjb250ZW50QmxvY2tJbmRleCI6MCwiZGVsdGEiOnsidGV4dCI6IiBpbiBQ
88
+ YXJpcy48LyJ9LCJwIjoiYWJjZGVmIn2biUXfAAAA1QAAAFfROOsXCzpldmVudC10eXBlBwARY29u
89
+ dGVudEJsb2NrRGVsdGENOmNvbnRlbnQtdHlwZQcAEGFwcGxpY2F0aW9uL2pzb24NOm1lc3NhZ2Ut
90
+ dHlwZQcABWV2ZW50eyJjb250ZW50QmxvY2tJbmRleCI6MCwiZGVsdGEiOnsidGV4dCI6InRoaW5r
91
+ aW5nIn0sInAiOiJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNU
92
+ VVZXWFlaIn0q+El1AAAA0wAAAFdeeB63CzpldmVudC10eXBlBwARY29udGVudEJsb2NrRGVsdGEN
93
+ OmNvbnRlbnQtdHlwZQcAEGFwcGxpY2F0aW9uL2pzb24NOm1lc3NhZ2UtdHlwZQcABWV2ZW50eyJj
94
+ b250ZW50QmxvY2tJbmRleCI6MCwiZGVsdGEiOnsidGV4dCI6Ij5cbiJ9LCJwIjoiYWJjZGVmZ2hp
95
+ amtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMiJ9WEvLvgAAAMAA
96
+ AABWDj/Dcws6ZXZlbnQtdHlwZQcAEGNvbnRlbnRCbG9ja1N0b3ANOmNvbnRlbnQtdHlwZQcAEGFw
97
+ cGxpY2F0aW9uL2pzb24NOm1lc3NhZ2UtdHlwZQcABWV2ZW50eyJjb250ZW50QmxvY2tJbmRleCI6
98
+ MCwicCI6ImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldY
99
+ WVowMTIzNDU2NyJ9EPTSwQAAAQ4AAABX5EF2+gs6ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja1N0
100
+ YXJ0DTpjb250ZW50LXR5cGUHABBhcHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVu
101
+ dHsiY29udGVudEJsb2NrSW5kZXgiOjEsInAiOiJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFC
102
+ Q0RFRkdISUpLTE1OT1BRUlMiLCJzdGFydCI6eyJ0b29sVXNlIjp7Im5hbWUiOiJnZXRfdGVtcGVy
103
+ YXR1cmUiLCJ0b29sVXNlSWQiOiJ0b29sdXNlX2xBR196UDhRUkhtU1lPd1p6emFDcUEifX19Vwn4
104
+ 5wAAAOsAAABXzynt8As6ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja0RlbHRhDTpjb250ZW50LXR5
105
+ cGUHABBhcHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsiY29udGVudEJsb2Nr
106
+ SW5kZXgiOjEsImRlbHRhIjp7InRvb2xVc2UiOnsiaW5wdXQiOiJ7XCJjaXR5XCI6XCJQYXJpc1wi
107
+ fSJ9fSwicCI6ImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RV
108
+ VlcifaOerpkAAACUAAAAVsOsqngLOmV2ZW50LXR5cGUHABBjb250ZW50QmxvY2tTdG9wDTpjb250
109
+ ZW50LXR5cGUHABBhcHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsiY29udGVu
110
+ dEJsb2NrSW5kZXgiOjEsInAiOiJhYmNkZWZnaGlqa2xtbm9wIn1vO+REAAAAqgAAAFFD2Tk8Czpl
111
+ dmVudC10eXBlBwALbWVzc2FnZVN0b3ANOmNvbnRlbnQtdHlwZQcAEGFwcGxpY2F0aW9uL2pzb24N
112
+ Om1lc3NhZ2UtdHlwZQcABWV2ZW50eyJwIjoiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNE
113
+ RUZHSElKS0xNTk8iLCJzdG9wUmVhc29uIjoidG9vbF91c2UifUNGZLwAAADPAAAATp8DzPQLOmV2
114
+ ZW50LXR5cGUHAAhtZXRhZGF0YQ06Y29udGVudC10eXBlBwAQYXBwbGljYXRpb24vanNvbg06bWVz
115
+ c2FnZS10eXBlBwAFZXZlbnR7Im1ldHJpY3MiOnsibGF0ZW5jeU1zIjo0MjJ9LCJwIjoiYWJjZGVm
116
+ Z2hpamtsbSIsInVzYWdlIjp7ImlucHV0VG9rZW5zIjo0NzEsIm91dHB1dFRva2VucyI6OTEsInRv
117
+ dGFsVG9rZW5zIjo1NjJ9fUKRITE=
118
+ headers:
119
+ connection:
120
+ - keep-alive
121
+ content-type:
122
+ - application/vnd.amazon.eventstream
123
+ transfer-encoding:
124
+ - chunked
125
+ status:
126
+ code: 200
127
+ message: OK
128
+ - request:
129
+ body: '{"messages": [{"role": "user", "content": [{"text": "What is the temperature of the capital of France?"}]}, {"role":
130
+ "assistant", "content": [{"text": "<thinking> To find the temperature of the capital of France, I need to first determine
131
+ the capital of France and then get the current temperature in that city. The capital of France is Paris. I will use
132
+ the \"get_temperature\" tool to find the current temperature in Paris.</thinking>\n"}, {"toolUse": {"toolUseId": "tooluse_lAG_zP8QRHmSYOwZzzaCqA",
133
+ "name": "get_temperature", "input": {"city": "Paris"}}}]}, {"role": "user", "content": [{"toolResult": {"toolUseId":
134
+ "tooluse_lAG_zP8QRHmSYOwZzzaCqA", "content": [{"text": "30\u00b0C"}], "status": "success"}}]}], "system": [{"text":
135
+ "You are a helpful chatbot."}], "inferenceConfig": {"topP": 0.5}, "toolConfig": {"tools": [{"toolSpec": {"name": "get_capital",
136
+ "description": "Get the capital of a country.", "inputSchema": {"json": {"properties": {"country": {"description": "The
137
+ country name.", "title": "Country", "type": "string"}}, "required": ["country"], "type": "object", "additionalProperties":
138
+ false}}}}, {"toolSpec": {"name": "get_temperature", "description": "Get the temperature in a city.", "inputSchema":
139
+ {"json": {"properties": {"city": {"description": "The city name.", "title": "City", "type": "string"}}, "required":
140
+ ["city"], "type": "object", "additionalProperties": false}}}}]}}'
141
+ headers:
142
+ amz-sdk-invocation-id:
143
+ - !!binary |
144
+ NjI1OWQ1OGEtYzU2Ni00OTVkLTkzMTItZDlkYmYxYjE4NjRj
145
+ amz-sdk-request:
146
+ - !!binary |
147
+ YXR0ZW1wdD0x
148
+ content-length:
149
+ - '1402'
150
+ content-type:
151
+ - !!binary |
152
+ YXBwbGljYXRpb24vanNvbg==
153
+ method: POST
154
+ uri: https://bedrock-runtime.us-east-1.amazonaws.com/model/us.amazon.nova-micro-v1%3A0/converse-stream
155
+ response:
156
+ body:
157
+ string: !!binary |
158
+ AAAAggAAAFIrYQxDCzpldmVudC10eXBlBwAMbWVzc2FnZVN0YXJ0DTpjb250ZW50LXR5cGUHABBh
159
+ cHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsicCI6ImFiY2RlIiwicm9sZSI6
160
+ ImFzc2lzdGFudCJ9Ki5zGAAAAKsAAABXl9q1uQs6ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja0Rl
161
+ bHRhDTpjb250ZW50LXR5cGUHABBhcHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVu
162
+ dHsiY29udGVudEJsb2NrSW5kZXgiOjAsImRlbHRhIjp7InRleHQiOiJUaGUifSwicCI6ImFiY2Rl
163
+ ZmdoaWprbG1ubyJ9URJ5hwAAAMsAAABXDujC9As6ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja0Rl
164
+ bHRhDTpjb250ZW50LXR5cGUHABBhcHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVu
165
+ dHsiY29udGVudEJsb2NrSW5kZXgiOjAsImRlbHRhIjp7InRleHQiOiIgY3VycmVudCB0ZW1wZXJh
166
+ dHVyZSBpbiBQYXJpcywgdGhlIn0sInAiOiJhYmNkZWZnaGlqa2xtbm9wIn31u0aNAAAArwAAAFdi
167
+ WhN5CzpldmVudC10eXBlBwARY29udGVudEJsb2NrRGVsdGENOmNvbnRlbnQtdHlwZQcAEGFwcGxp
168
+ Y2F0aW9uL2pzb24NOm1lc3NhZ2UtdHlwZQcABWV2ZW50eyJjb250ZW50QmxvY2tJbmRleCI6MCwi
169
+ ZGVsdGEiOnsidGV4dCI6IiBjYXBpdGFsIG9mIEZyYW5jZSwifSwicCI6ImFiYyJ9vDc8fgAAAMgA
170
+ AABXSUi4JAs6ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja0RlbHRhDTpjb250ZW50LXR5cGUHABBh
171
+ cHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsiY29udGVudEJsb2NrSW5kZXgi
172
+ OjAsImRlbHRhIjp7InRleHQiOiIgaXMgMzDCsEMifSwicCI6ImFiY2RlZmdoaWprbG1ub3BxcnN0
173
+ dXZ3eHl6QUJDREVGR0hJSktMIn0JIvoaAAAAoAAAAFfgCoSoCzpldmVudC10eXBlBwARY29udGVu
174
+ dEJsb2NrRGVsdGENOmNvbnRlbnQtdHlwZQcAEGFwcGxpY2F0aW9uL2pzb24NOm1lc3NhZ2UtdHlw
175
+ ZQcABWV2ZW50eyJjb250ZW50QmxvY2tJbmRleCI6MCwiZGVsdGEiOnsidGV4dCI6Ii4ifSwicCI6
176
+ ImFiY2RlZiJ9JeMRnQAAAJ8AAABWtHybaQs6ZXZlbnQtdHlwZQcAEGNvbnRlbnRCbG9ja1N0b3AN
177
+ OmNvbnRlbnQtdHlwZQcAEGFwcGxpY2F0aW9uL2pzb24NOm1lc3NhZ2UtdHlwZQcABWV2ZW50eyJj
178
+ b250ZW50QmxvY2tJbmRleCI6MCwicCI6ImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QSJ9gmux
179
+ AQAAAJsAAABR35ioCgs6ZXZlbnQtdHlwZQcAC21lc3NhZ2VTdG9wDTpjb250ZW50LXR5cGUHABBh
180
+ cHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsicCI6ImFiY2RlZmdoaWprbG1u
181
+ b3BxcnN0dXZ3eHl6Iiwic3RvcFJlYXNvbiI6ImVuZF90dXJuIn0EgYGjAAAA0AAAAE59s8ynCzpl
182
+ dmVudC10eXBlBwAIbWV0YWRhdGENOmNvbnRlbnQtdHlwZQcAEGFwcGxpY2F0aW9uL2pzb24NOm1l
183
+ c3NhZ2UtdHlwZQcABWV2ZW50eyJtZXRyaWNzIjp7ImxhdGVuY3lNcyI6MjIzfSwicCI6ImFiY2Rl
184
+ ZmdoaWprbG1uIiwidXNhZ2UiOnsiaW5wdXRUb2tlbnMiOjU3Nywib3V0cHV0VG9rZW5zIjoxOCwi
185
+ dG90YWxUb2tlbnMiOjU5NX19aWpwrQ==
186
+ headers:
187
+ connection:
188
+ - keep-alive
189
+ content-type:
190
+ - application/vnd.amazon.eventstream
191
+ transfer-encoding:
192
+ - chunked
193
+ status:
194
+ code: 200
195
+ message: OK
196
+ version: 1
@@ -0,0 +1,43 @@
1
+ interactions:
2
+ - request:
3
+ body: '{"messages": [{"role": "user", "content": [{"text": "What is the capital of France?"}]}], "system": [{"text": "You
4
+ are a helpful chatbot."}], "inferenceConfig": {"maxTokens": 5}}'
5
+ headers:
6
+ amz-sdk-invocation-id:
7
+ - !!binary |
8
+ ZmZhYjMyZmItODRjOS00YWZjLWE4NTAtNTQ4OTUxMjI5NmU4
9
+ amz-sdk-request:
10
+ - !!binary |
11
+ YXR0ZW1wdD0x
12
+ content-length:
13
+ - '178'
14
+ content-type:
15
+ - !!binary |
16
+ YXBwbGljYXRpb24vanNvbg==
17
+ method: POST
18
+ uri: https://bedrock-runtime.us-east-1.amazonaws.com/model/us.amazon.nova-micro-v1%3A0/converse
19
+ response:
20
+ headers:
21
+ connection:
22
+ - keep-alive
23
+ content-length:
24
+ - '206'
25
+ content-type:
26
+ - application/json
27
+ parsed_body:
28
+ metrics:
29
+ latencyMs: 159
30
+ output:
31
+ message:
32
+ content:
33
+ - text: The capital of France is
34
+ role: assistant
35
+ stopReason: max_tokens
36
+ usage:
37
+ inputTokens: 13
38
+ outputTokens: 5
39
+ totalTokens: 18
40
+ status:
41
+ code: 200
42
+ message: OK
43
+ version: 1
@@ -0,0 +1,102 @@
1
+ interactions:
2
+ - request:
3
+ body: '{"messages": [{"role": "user", "content": [{"text": "What is the capital of France?"}]}], "system": [{"text": "You
4
+ are a helpful chatbot."}], "inferenceConfig": {}, "toolConfig": {"tools": [{"toolSpec": {"name": "get_capital", "description":
5
+ "Get the capital of a country.", "inputSchema": {"json": {"properties": {"country": {"description": "The country name.",
6
+ "title": "Country", "type": "string"}}, "required": ["country"], "type": "object", "additionalProperties": false}}}}]}}'
7
+ headers:
8
+ amz-sdk-invocation-id:
9
+ - !!binary |
10
+ NjgwMDdkOTEtN2U2Mi00OTg5LTk1OWEtZWJkZjFmYzg5Yzdi
11
+ amz-sdk-request:
12
+ - !!binary |
13
+ YXR0ZW1wdD0x
14
+ content-length:
15
+ - '482'
16
+ content-type:
17
+ - !!binary |
18
+ YXBwbGljYXRpb24vanNvbg==
19
+ method: POST
20
+ uri: https://bedrock-runtime.us-east-1.amazonaws.com/model/us.amazon.nova-micro-v1%3A0/converse
21
+ response:
22
+ headers:
23
+ connection:
24
+ - keep-alive
25
+ content-length:
26
+ - '450'
27
+ content-type:
28
+ - application/json
29
+ parsed_body:
30
+ metrics:
31
+ latencyMs: 387
32
+ output:
33
+ message:
34
+ content:
35
+ - text: |
36
+ <thinking> To find the capital of France, I will use the available tool "get_capital". I will input the country name "France" into the tool. </thinking>
37
+ - toolUse:
38
+ input:
39
+ country: France
40
+ name: get_capital
41
+ toolUseId: tooluse_F8LnaCMtQ0-chKTnPhNH2g
42
+ role: assistant
43
+ stopReason: tool_use
44
+ usage:
45
+ inputTokens: 417
46
+ outputTokens: 69
47
+ totalTokens: 486
48
+ status:
49
+ code: 200
50
+ message: OK
51
+ - request:
52
+ body: '{"messages": [{"role": "user", "content": [{"text": "What is the capital of France?"}]}, {"role": "assistant",
53
+ "content": [{"text": "<thinking> To find the capital of France, I will use the available tool \"get_capital\". I will
54
+ input the country name \"France\" into the tool. </thinking>\n"}, {"toolUse": {"toolUseId": "tooluse_F8LnaCMtQ0-chKTnPhNH2g",
55
+ "name": "get_capital", "input": {"country": "France"}}}]}, {"role": "user", "content": [{"toolResult": {"toolUseId":
56
+ "tooluse_F8LnaCMtQ0-chKTnPhNH2g", "content": [{"text": "The country is not supported.\n\nFix the errors and try again."}],
57
+ "status": "error"}}]}], "system": [{"text": "You are a helpful chatbot."}], "inferenceConfig": {}, "toolConfig": {"tools":
58
+ [{"toolSpec": {"name": "get_capital", "description": "Get the capital of a country.", "inputSchema": {"json": {"properties":
59
+ {"country": {"description": "The country name.", "title": "Country", "type": "string"}}, "required": ["country"], "type":
60
+ "object", "additionalProperties": false}}}}]}}'
61
+ headers:
62
+ amz-sdk-invocation-id:
63
+ - !!binary |
64
+ M2NkZjc3YjgtYzAyYi00NTI0LWI3Y2UtMjc3YzQyYjg2ZGE2
65
+ amz-sdk-request:
66
+ - !!binary |
67
+ YXR0ZW1wdD0x
68
+ content-length:
69
+ - '1011'
70
+ content-type:
71
+ - !!binary |
72
+ YXBwbGljYXRpb24vanNvbg==
73
+ method: POST
74
+ uri: https://bedrock-runtime.us-east-1.amazonaws.com/model/us.amazon.nova-micro-v1%3A0/converse
75
+ response:
76
+ headers:
77
+ connection:
78
+ - keep-alive
79
+ content-length:
80
+ - '719'
81
+ content-type:
82
+ - application/json
83
+ parsed_body:
84
+ metrics:
85
+ latencyMs: 663
86
+ output:
87
+ message:
88
+ content:
89
+ - text: |-
90
+ <thinking> It seems there was an error in retrieving the capital of France. The tool returned a message saying "The country is not supported." This indicates that the tool does not support the country France. I will inform the user about this limitation and suggest alternative ways to find the information. </thinking>
91
+
92
+ I'm sorry, but the tool I have does not support retrieving the capital of France. However, I can tell you that the capital of France is Paris. If you need information on a different country, please let me know!
93
+ role: assistant
94
+ stopReason: end_turn
95
+ usage:
96
+ inputTokens: 509
97
+ outputTokens: 108
98
+ totalTokens: 617
99
+ status:
100
+ code: 200
101
+ message: OK
102
+ version: 1
@@ -0,0 +1,121 @@
1
+ interactions:
2
+ - request:
3
+ body: '{"messages": [{"role": "user", "content": [{"text": "What is the capital of France?"}]}], "system": [{"text": "You
4
+ are a helpful chatbot."}], "inferenceConfig": {}}'
5
+ headers:
6
+ amz-sdk-invocation-id:
7
+ - !!binary |
8
+ ODc3YmIyNWUtZjEwOS00YWE1LTliMGItODdhNGE3MDAwOTZm
9
+ amz-sdk-request:
10
+ - !!binary |
11
+ YXR0ZW1wdD0x
12
+ content-length:
13
+ - '164'
14
+ content-type:
15
+ - !!binary |
16
+ YXBwbGljYXRpb24vanNvbg==
17
+ method: POST
18
+ uri: https://bedrock-runtime.us-east-1.amazonaws.com/model/us.amazon.nova-micro-v1%3A0/converse-stream
19
+ response:
20
+ body:
21
+ string: !!binary |
22
+ AAAAsQAAAFLN4M4VCzpldmVudC10eXBlBwAMbWVzc2FnZVN0YXJ0DTpjb250ZW50LXR5cGUHABBh
23
+ cHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsicCI6ImFiY2RlZmdoaWprbG1u
24
+ b3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVoiLCJyb2xlIjoiYXNzaXN0YW50
25
+ In3DJvYkAAAAxQAAAFex2HyVCzpldmVudC10eXBlBwARY29udGVudEJsb2NrRGVsdGENOmNvbnRl
26
+ bnQtdHlwZQcAEGFwcGxpY2F0aW9uL2pzb24NOm1lc3NhZ2UtdHlwZQcABWV2ZW50eyJjb250ZW50
27
+ QmxvY2tJbmRleCI6MCwiZGVsdGEiOnsidGV4dCI6IlRoZSJ9LCJwIjoiYWJjZGVmZ2hpamtsbW5v
28
+ cHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk8ifUQA4bcAAAC4AAAAV7CaWOsLOmV2ZW50LXR5cGUH
29
+ ABFjb250ZW50QmxvY2tEZWx0YQ06Y29udGVudC10eXBlBwAQYXBwbGljYXRpb24vanNvbg06bWVz
30
+ c2FnZS10eXBlBwAFZXZlbnR7ImNvbnRlbnRCbG9ja0luZGV4IjowLCJkZWx0YSI6eyJ0ZXh0Ijoi
31
+ IGNhcGl0YWwgb2YgRnJhbmNlIGlzIFBhcmlzIn0sInAiOiJhYmNkIn0vtUNYAAAAxwAAAFfLGC/1
32
+ CzpldmVudC10eXBlBwARY29udGVudEJsb2NrRGVsdGENOmNvbnRlbnQtdHlwZQcAEGFwcGxpY2F0
33
+ aW9uL2pzb24NOm1lc3NhZ2UtdHlwZQcABWV2ZW50eyJjb250ZW50QmxvY2tJbmRleCI6MCwiZGVs
34
+ dGEiOnsidGV4dCI6Ii4gUGFyaXMgaXMifSwicCI6ImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6
35
+ QUJDREVGR0hJSiJ9q/t2UQAAANgAAABXKagvpgs6ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja0Rl
36
+ bHRhDTpjb250ZW50LXR5cGUHABBhcHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVu
37
+ dHsiY29udGVudEJsb2NrSW5kZXgiOjAsImRlbHRhIjp7InRleHQiOiIgbm90IG9ubHkgdGhlIn0s
38
+ InAiOiJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWCJ9
39
+ pVRd1AAAAOgAAABXiImXIAs6ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja0RlbHRhDTpjb250ZW50
40
+ LXR5cGUHABBhcHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsiY29udGVudEJs
41
+ b2NrSW5kZXgiOjAsImRlbHRhIjp7InRleHQiOiIgY2FwaXRhbCBjaXR5IGJ1dCBhbHNvIHRoZSJ9
42
+ LCJwIjoiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZ
43
+ WjAifbtUo8EAAADVAAAAV9E46xcLOmV2ZW50LXR5cGUHABFjb250ZW50QmxvY2tEZWx0YQ06Y29u
44
+ dGVudC10eXBlBwAQYXBwbGljYXRpb24vanNvbg06bWVzc2FnZS10eXBlBwAFZXZlbnR7ImNvbnRl
45
+ bnRCbG9ja0luZGV4IjowLCJkZWx0YSI6eyJ0ZXh0IjoiIG1vc3QifSwicCI6ImFiY2RlZmdoaWpr
46
+ bG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVowMTIifaPrsgUAAADZAAAA
47
+ VxTIBhYLOmV2ZW50LXR5cGUHABFjb250ZW50QmxvY2tEZWx0YQ06Y29udGVudC10eXBlBwAQYXBw
48
+ bGljYXRpb24vanNvbg06bWVzc2FnZS10eXBlBwAFZXZlbnR7ImNvbnRlbnRCbG9ja0luZGV4Ijow
49
+ LCJkZWx0YSI6eyJ0ZXh0IjoiIHBvcHVsb3VzIGNpdHkgaW4ifSwicCI6ImFiY2RlZmdoaWprbG1u
50
+ b3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVIn2gfROCAAAAuAAAAFewmljrCzpldmVu
51
+ dC10eXBlBwARY29udGVudEJsb2NrRGVsdGENOmNvbnRlbnQtdHlwZQcAEGFwcGxpY2F0aW9uL2pz
52
+ b24NOm1lc3NhZ2UtdHlwZQcABWV2ZW50eyJjb250ZW50QmxvY2tJbmRleCI6MCwiZGVsdGEiOnsi
53
+ dGV4dCI6IiBGcmFuY2UsIGtub3duIn0sInAiOiJhYmNkZWZnaGlqa2xtbm9wcSJ9hc1x3QAAANwA
54
+ AABX3CiJZgs6ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja0RlbHRhDTpjb250ZW50LXR5cGUHABBh
55
+ cHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsiY29udGVudEJsb2NrSW5kZXgi
56
+ OjAsImRlbHRhIjp7InRleHQiOiIgZm9yIGl0cyBzaWduaWZpY2FudCJ9LCJwIjoiYWJjZGVmZ2hp
57
+ amtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUVJTVFUifUV1u68AAADXAAAAV6v4uHcL
58
+ OmV2ZW50LXR5cGUHABFjb250ZW50QmxvY2tEZWx0YQ06Y29udGVudC10eXBlBwAQYXBwbGljYXRp
59
+ b24vanNvbg06bWVzc2FnZS10eXBlBwAFZXZlbnR7ImNvbnRlbnRCbG9ja0luZGV4IjowLCJkZWx0
60
+ YSI6eyJ0ZXh0IjoiIGN1bHR1cmFsIn0sInAiOiJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFC
61
+ Q0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMCJ9KJk8TgAAALcAAABXMsrPOgs6ZXZlbnQtdHlwZQcA
62
+ EWNvbnRlbnRCbG9ja0RlbHRhDTpjb250ZW50LXR5cGUHABBhcHBsaWNhdGlvbi9qc29uDTptZXNz
63
+ YWdlLXR5cGUHAAVldmVudHsiY29udGVudEJsb2NrSW5kZXgiOjAsImRlbHRhIjp7InRleHQiOiIs
64
+ IHBvbGl0aWNhbCJ9LCJwIjoiYWJjZGVmZ2hpamtsbW5vcHFycyJ9K0QGiwAAALgAAABXsJpY6ws6
65
+ ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja0RlbHRhDTpjb250ZW50LXR5cGUHABBhcHBsaWNhdGlv
66
+ bi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsiY29udGVudEJsb2NrSW5kZXgiOjAsImRlbHRh
67
+ Ijp7InRleHQiOiIsIGFuZCBlY29ub21pYyJ9LCJwIjoiYWJjZGVmZ2hpamtsbW5vcHEifUKZaBEA
68
+ AADoAAAAV4iJlyALOmV2ZW50LXR5cGUHABFjb250ZW50QmxvY2tEZWx0YQ06Y29udGVudC10eXBl
69
+ BwAQYXBwbGljYXRpb24vanNvbg06bWVzc2FnZS10eXBlBwAFZXZlbnR7ImNvbnRlbnRCbG9ja0lu
70
+ ZGV4IjowLCJkZWx0YSI6eyJ0ZXh0IjoiIGluZmx1ZW5jZS4gSXQgaXMgZmFtb3VzIn0sInAiOiJh
71
+ YmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaMDEyIn1e
72
+ jpquAAAAxwAAAFfLGC/1CzpldmVudC10eXBlBwARY29udGVudEJsb2NrRGVsdGENOmNvbnRlbnQt
73
+ dHlwZQcAEGFwcGxpY2F0aW9uL2pzb24NOm1lc3NhZ2UtdHlwZQcABWV2ZW50eyJjb250ZW50Qmxv
74
+ Y2tJbmRleCI6MCwiZGVsdGEiOnsidGV4dCI6IiBmb3IgbGFuZG1hcmtzIn0sInAiOiJhYmNkZWZn
75
+ aGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRiJ9nPkcVgAAANsAAABXbghVdgs6ZXZlbnQtdHlwZQcA
76
+ EWNvbnRlbnRCbG9ja0RlbHRhDTpjb250ZW50LXR5cGUHABBhcHBsaWNhdGlvbi9qc29uDTptZXNz
77
+ YWdlLXR5cGUHAAVldmVudHsiY29udGVudEJsb2NrSW5kZXgiOjAsImRlbHRhIjp7InRleHQiOiIg
78
+ c3VjaCBhcyB0aGUgRWlmZmVsIn0sInAiOiJhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RF
79
+ RkdISUpLTE1OT1BRUlNUVSJ9xQJEegAAAMAAAABXeTjz5Qs6ZXZlbnQtdHlwZQcAEWNvbnRlbnRC
80
+ bG9ja0RlbHRhDTpjb250ZW50LXR5cGUHABBhcHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUH
81
+ AAVldmVudHsiY29udGVudEJsb2NrSW5kZXgiOjAsImRlbHRhIjp7InRleHQiOiIgVG93ZXIsIHRo
82
+ ZSBMb3V2cmUifSwicCI6ImFiY2RlZmdoaWprbG1ub3BxcnN0dSJ9RKcOewAAAMkAAABXdCiRlAs6
83
+ ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja0RlbHRhDTpjb250ZW50LXR5cGUHABBhcHBsaWNhdGlv
84
+ bi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsiY29udGVudEJsb2NrSW5kZXgiOjAsImRlbHRh
85
+ Ijp7InRleHQiOiIgTXVzZXVtLCBhbmQgTm90cmUifSwicCI6ImFiY2RlZmdoaWprbG1ub3BxcnN0
86
+ dXZ3eHl6QUJDRCJ9GqvuKAAAAMkAAABXdCiRlAs6ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja0Rl
87
+ bHRhDTpjb250ZW50LXR5cGUHABBhcHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVu
88
+ dHsiY29udGVudEJsb2NrSW5kZXgiOjAsImRlbHRhIjp7InRleHQiOiItRGFtZSJ9LCJwIjoiYWJj
89
+ ZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNERUZHSElKS0xNTk9QUSJ9sf4t1wAAAK8AAABXYloT
90
+ eQs6ZXZlbnQtdHlwZQcAEWNvbnRlbnRCbG9ja0RlbHRhDTpjb250ZW50LXR5cGUHABBhcHBsaWNh
91
+ dGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsiY29udGVudEJsb2NrSW5kZXgiOjAsImRl
92
+ bHRhIjp7InRleHQiOiIgQ2F0aGVkcmFsLCJ9LCJwIjoiYWJjZGVmZ2hpamsifQaHuc8AAADSAAAA
93
+ V2MYNwcLOmV2ZW50LXR5cGUHABFjb250ZW50QmxvY2tEZWx0YQ06Y29udGVudC10eXBlBwAQYXBw
94
+ bGljYXRpb24vanNvbg06bWVzc2FnZS10eXBlBwAFZXZlbnR7ImNvbnRlbnRCbG9ja0luZGV4Ijow
95
+ LCJkZWx0YSI6eyJ0ZXh0IjoiIGFtb25nIG1hbnkifSwicCI6ImFiY2RlZmdoaWprbG1ub3BxcnN0
96
+ dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1QifW3jE/gAAADlAAAAV3AZU5ELOmV2ZW50LXR5cGUH
97
+ ABFjb250ZW50QmxvY2tEZWx0YQ06Y29udGVudC10eXBlBwAQYXBwbGljYXRpb24vanNvbg06bWVz
98
+ c2FnZS10eXBlBwAFZXZlbnR7ImNvbnRlbnRCbG9ja0luZGV4IjowLCJkZWx0YSI6eyJ0ZXh0Ijoi
99
+ IG90aGVyIGF0dHJhY3Rpb25zLiJ9LCJwIjoiYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXpBQkNE
100
+ RUZHSElKS0xNTk9QUVJTVFVWV1hZWjAxMjM0In2h9GQAAAAAmgAAAFZ8nBQZCzpldmVudC10eXBl
101
+ BwAQY29udGVudEJsb2NrU3RvcA06Y29udGVudC10eXBlBwAQYXBwbGljYXRpb24vanNvbg06bWVz
102
+ c2FnZS10eXBlBwAFZXZlbnR7ImNvbnRlbnRCbG9ja0luZGV4IjowLCJwIjoiYWJjZGVmZ2hpamts
103
+ bW5vcHFyc3R1diJ9ic9hkwAAALMAAABRLinMzws6ZXZlbnQtdHlwZQcAC21lc3NhZ2VTdG9wDTpj
104
+ b250ZW50LXR5cGUHABBhcHBsaWNhdGlvbi9qc29uDTptZXNzYWdlLXR5cGUHAAVldmVudHsicCI6
105
+ ImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYIiwic3Rv
106
+ cFJlYXNvbiI6ImVuZF90dXJuIn0WV3N2AAAA6wAAAE6rQkUwCzpldmVudC10eXBlBwAIbWV0YWRh
107
+ dGENOmNvbnRlbnQtdHlwZQcAEGFwcGxpY2F0aW9uL2pzb24NOm1lc3NhZ2UtdHlwZQcABWV2ZW50
108
+ eyJtZXRyaWNzIjp7ImxhdGVuY3lNcyI6MzY3fSwicCI6ImFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3
109
+ eHl6QUJDREVGR0hJSktMTU5PUFEiLCJ1c2FnZSI6eyJpbnB1dFRva2VucyI6MTMsIm91dHB1dFRv
110
+ a2VucyI6NjEsInRvdGFsVG9rZW5zIjo3NH19KYhBAQ==
111
+ headers:
112
+ connection:
113
+ - keep-alive
114
+ content-type:
115
+ - application/vnd.amazon.eventstream
116
+ transfer-encoding:
117
+ - chunked
118
+ status:
119
+ code: 200
120
+ message: OK
121
+ version: 1