Evaluate: Cross-provider context serialisation for ADF multi-model routing
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 35/100
Línea de trabajo
Start by reading terraphim-ai/crates/terraphim_orchestrator/src/routing.rs and the referenced Pi cross-provider handoff implementation. Review the listed ADF routing scenarios and provider formats, then prototype the Anthropic Messages API ↔ OpenAI Chat Completions API conversion and measure round-trip context loss. Done means documenting the scenarios and a rationale to implement, defer, or reject the approach.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Parent Epic
#682 -- Evaluate Pi architectural patterns
Pattern
Pi's pi-ai layer supports cross-provider handoffs: switch models mid-session while serialising conversation context across different provider formats (Anthropic, OpenAI, Google, etc.). Context serialisation handles format differences transparently.
Current State
ADF (terraphim_orchestrator) routes different agents to different models via RoutingEngine:
fastest-> Cerebras llama-3.3-70b (~300ms)think-> z.ai GLM-5 (reasoning)general-> z.ai GLM-4.7default-> Claude viaclaude -p
However, each agent runs in isolation. There is no mechanism to:
- Hand off context from one model to another mid-task
- Serialise a conversation from Claude format to OpenAI format for a second opinion
- Use a cheaper model for initial analysis then escalate to a more capable model with the same context
Evaluation Questions
- Is cross-provider handoff valuable for ADF? Current agents are independent. Would "start with Cerebras, escalate to Claude" improve cost/quality?
- What does context serialisation look like in Rust? Pi does this in TypeScript. Rust implementation would need serde-based format converters for each provider's message schema.
- Does this conflict with the Agent SDK direction? If we migrate ADF to Agent SDK (#682 context), we're locked to Claude. Cross-provider would only apply to non-SDK agents.
- What's the minimal viable implementation? E.g., Anthropic <-> OpenAI message format converter as a standalone function.
Acceptance Criteria
- Identify 2-3 concrete ADF scenarios where cross-provider handoff would improve outcomes
- Prototype message format converter: Anthropic Messages API <-> OpenAI Chat Completions API
- Measure context loss (if any) during serialisation round-trip
- Decision: implement, defer, or reject with rationale
References
- Pi cross-provider handoffs: https://github.com/badlogic/pi-mono/tree/main/packages/ai (see "Cross-Provider Handoffs" section)
- ADF RoutingEngine: terraphim-ai/crates/terraphim_orchestrator/src/routing.rs
- terraphim_llm_proxy model routing: /etc/terraphim-llm-proxy/config.toml
- Lenguaje dominante
- Rust
- Estrellas
- 62
- Forks
- 5
- Merge medio
- 2 h 27 min
- PR fusionados (30 d)
- 1
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de terraphim/terraphim-ai
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
terraphim/terraphim-ai#885 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
terraphim/terraphim-ai#871 ·
-
enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
terraphim/terraphim-ai#810 · 2 comentarios ·
-
enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
terraphim/terraphim-ai#729 ·
-
enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
terraphim/terraphim-ai#728 ·
Todos los issues de terraphim/terraphim-ai
Issues similares
-
Browser (wasm) relay client cannot connect to relays whose URL has a trailing-dot FQDN hostname Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
n0-computer/iroh#4550 ·
-
impl detach for native Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
paritytech/zombienet-sdk#591 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
farion1231/cc-switch#7638 · 1 comentario ·
-
onnx-ir re-exports ModelProto and GraphProto but not NodeProto, AttributeProto and AttributeType Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100