OSS restructuring for open-core model: - Rename package from agentserver/ to xml_pipeline/ - Update all imports (44 Python files, 31 docs/configs) - Update pyproject.toml for OSS distribution (v0.3.0) - Move prompt_toolkit from core to optional [console] extra - Remove auth/server/lsp from core optional deps (-> Nextra) New console example in examples/console/: - Self-contained demo with handlers and config - Uses prompt_toolkit (optional, falls back to input()) - No password auth, no TUI, no LSP — just the basics - Shows how to use xml-pipeline as a library Import changes: - from agentserver.* -> from xml_pipeline.* - CLI entry points updated: xml_pipeline.cli:main Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
40 lines
821 B
Python
40 lines
821 B
Python
"""
|
|
LLM abstraction layer.
|
|
|
|
Usage:
|
|
from xml_pipeline.llm import router
|
|
|
|
# Configure once at startup (or via organism.yaml)
|
|
router.configure_router({
|
|
"strategy": "failover",
|
|
"backends": [
|
|
{"provider": "xai", "api_key_env": "XAI_API_KEY"},
|
|
]
|
|
})
|
|
|
|
# Then anywhere in your code:
|
|
response = await router.complete(
|
|
model="grok-4.1",
|
|
messages=[{"role": "user", "content": "Hello"}],
|
|
)
|
|
"""
|
|
|
|
from xml_pipeline.llm.router import (
|
|
LLMRouter,
|
|
get_router,
|
|
configure_router,
|
|
complete,
|
|
Strategy,
|
|
)
|
|
from xml_pipeline.llm.backend import LLMRequest, LLMResponse, BackendError
|
|
|
|
__all__ = [
|
|
"LLMRouter",
|
|
"get_router",
|
|
"configure_router",
|
|
"complete",
|
|
"Strategy",
|
|
"LLMRequest",
|
|
"LLMResponse",
|
|
"BackendError",
|
|
]
|