llama-stack-mirror/llama_stack/apis
Ashwin Bharambe 2e544ecd8a feat(tools)!: substantial clean up of "Tool" related datatypes (#3627)
This is a sweeping change to clean up some gunk around our "Tool"
definitions.

First, we had two types `Tool` and `ToolDef`. The first of these was a
"Resource" type for the registry but we had stopped registering tools
inside the Registry long back (and only registered ToolGroups.) The
latter was for specifying tools for the Agents API. This PR removes the
former and adds an optional `toolgroup_id` field to the latter.

Secondly, as pointed out by @bbrowning in
https://github.com/llamastack/llama-stack/pull/3003#issuecomment-3245270132,
we were doing a lossy conversion from a full JSON schema from the MCP
tool specification into our ToolDefinition to send it to the model.
There is no necessity to do this -- we ourselves aren't doing any
execution at all but merely passing it to the chat completions API which
supports this. By doing this (and by doing it poorly), we encountered
limitations like not supporting array items, or not resolving $refs,
etc.

To fix this, we replaced the `parameters` field by `{ input_schema,
output_schema }` which can be full blown JSON schemas.

Finally, there were some types in our llama-related chat format
conversion which needed some cleanup. We are taking this opportunity to
clean those up.

This PR is a substantial breaking change to the API. However, given our
window for introducing breaking changes, this suits us just fine. I will
be landing a concurrent `llama-stack-client` change as well since API
shapes are changing.
2025-10-02 21:50:13 -07:00
..
agents fix(api): fix a mistake from #3636 which overwrote POST /responses 2025-10-02 21:50:12 -07:00
batches chore!: add double routes for v1/openai/v1 (#3636) 2025-10-02 21:50:12 -07:00
benchmarks feat: introduce API leveling, post_training, eval to v1alpha (#3449) 2025-09-26 16:18:07 +02:00
common feat: Add Kubernetes auth provider to use SelfSubjectReview and kubernetes api server (#2559) 2025-09-08 11:25:10 +02:00
datasetio feat(api): implement v1beta leveling, and additional alpha (#3594) 2025-10-01 09:18:11 -07:00
datasets feat(api): implement v1beta leveling, and additional alpha (#3594) 2025-10-01 09:18:11 -07:00
eval feat: introduce API leveling, post_training, eval to v1alpha (#3449) 2025-09-26 16:18:07 +02:00
files chore!: add double routes for v1/openai/v1 (#3636) 2025-10-02 21:50:12 -07:00
inference feat(tools)!: substantial clean up of "Tool" related datatypes (#3627) 2025-10-02 21:50:13 -07:00
inspect feat: introduce API leveling, post_training, eval to v1alpha (#3449) 2025-09-26 16:18:07 +02:00
models chore!: add double routes for v1/openai/v1 (#3636) 2025-10-02 21:50:12 -07:00
post_training feat: introduce API leveling, post_training, eval to v1alpha (#3449) 2025-09-26 16:18:07 +02:00
prompts feat: introduce API leveling, post_training, eval to v1alpha (#3449) 2025-09-26 16:18:07 +02:00
providers feat: introduce API leveling, post_training, eval to v1alpha (#3449) 2025-09-26 16:18:07 +02:00
safety chore!: add double routes for v1/openai/v1 (#3636) 2025-10-02 21:50:12 -07:00
scoring feat: introduce API leveling, post_training, eval to v1alpha (#3449) 2025-09-26 16:18:07 +02:00
scoring_functions feat: introduce API leveling, post_training, eval to v1alpha (#3449) 2025-09-26 16:18:07 +02:00
shields feat: introduce API leveling, post_training, eval to v1alpha (#3449) 2025-09-26 16:18:07 +02:00
synthetic_data_generation feat: introduce API leveling, post_training, eval to v1alpha (#3449) 2025-09-26 16:18:07 +02:00
telemetry feat(api): implement v1beta leveling, and additional alpha (#3594) 2025-10-01 09:18:11 -07:00
tools feat(tools)!: substantial clean up of "Tool" related datatypes (#3627) 2025-10-02 21:50:13 -07:00
vector_dbs feat: introduce API leveling, post_training, eval to v1alpha (#3449) 2025-09-26 16:18:07 +02:00
vector_io chore!: add double routes for v1/openai/v1 (#3636) 2025-10-02 21:50:12 -07:00
__init__.py API Updates (#73) 2024-09-17 19:51:35 -07:00
datatypes.py feat: Adding OpenAI Prompts API (#3319) 2025-09-08 11:05:13 -04:00
resource.py feat: Adding OpenAI Prompts API (#3319) 2025-09-08 11:05:13 -04:00
version.py feat: introduce API leveling, post_training, eval to v1alpha (#3449) 2025-09-26 16:18:07 +02:00