-
Notifications
You must be signed in to change notification settings - Fork 144
feat: allow mellea programs to be added as tools #400
Copy link
Copy link
Open
Labels
area/backendsProvider-specific work: Ollama, HF, LiteLLM, OpenAI, Bedrock, vLLMProvider-specific work: Ollama, HF, LiteLLM, OpenAI, Bedrock, vLLMarea/stdlibCore abstractions: Context, MOT, SamplingStrategy, formatters, serializationCore abstractions: Context, MOT, SamplingStrategy, formatters, serializationarea/toolsTool framework, Bash/Python tools, tool call lifecycleTool framework, Bash/Python tools, tool call lifecycleenhancementNew feature or requestNew feature or requestneeds-designProblem is clear; implementation approach needs design discussion before work startsProblem is clear; implementation approach needs design discussion before work startsp2Medium/low: minor bugs, niche features, polish, docs, tests, cleanup. Scoped, lower urgency.Medium/low: minor bugs, niche features, polish, docs, tests, cleanup. Scoped, lower urgency.
Description
Metadata
Metadata
Assignees
Labels
area/backendsProvider-specific work: Ollama, HF, LiteLLM, OpenAI, Bedrock, vLLMProvider-specific work: Ollama, HF, LiteLLM, OpenAI, Bedrock, vLLMarea/stdlibCore abstractions: Context, MOT, SamplingStrategy, formatters, serializationCore abstractions: Context, MOT, SamplingStrategy, formatters, serializationarea/toolsTool framework, Bash/Python tools, tool call lifecycleTool framework, Bash/Python tools, tool call lifecycleenhancementNew feature or requestNew feature or requestneeds-designProblem is clear; implementation approach needs design discussion before work startsProblem is clear; implementation approach needs design discussion before work startsp2Medium/low: minor bugs, niche features, polish, docs, tests, cleanup. Scoped, lower urgency.Medium/low: minor bugs, niche features, polish, docs, tests, cleanup. Scoped, lower urgency.
Mellea programs are nominally functions that accept a backend, context, etc... as their parameters. We want to enable adding these mellea programs as tools in the context of other calls. We will need special logic to handle the threading of the backend and context to these tools (as well as formatting them to be invoked correctly by the model (ie the model shouldn't have to specify the backend / context to call)). We will also need to consider if model_options, any other parameters should be passed along as well.