- Eliminate core/ directory into cache/, runtime/, network/ subpackages plus flat modules
- Split cache.py (647 lines) into cache/{buffer,strategy,pool}.py by layer
- Add explicit ContiguousStrategy, make AllocationStrategy a real ABC
- Move TaskCacheState to cache/strategy.py, drop string forward references
- Rename api/ to network/, server.py to app.py
- Move sample.py into runtime/ alongside executor and graph
- Simplify TaskCacheManager.__init__ to single pool param
- Expose pool.strategy and pool.req_pool as public properties
- Fix KVCache import in attention_backend.py (TYPE_CHECKING guard)
- Fix steady-state decode reading uninitialized position_ids on first step
40 lines
913 B
Python
40 lines
913 B
Python
"""Inference API: protocol handler, stop checker, tool parsers, and FastAPI server.
|
|
|
|
``app`` is no longer a module-level global. Use :func:`get_app` to access the
|
|
lazy singleton FastAPI instance.
|
|
"""
|
|
|
|
from astrai.inference.network.app import (
|
|
AnthropicMessage,
|
|
ChatCompletionRequest,
|
|
ChatMessage,
|
|
FunctionDef,
|
|
MessagesRequest,
|
|
ToolDef,
|
|
get_app,
|
|
run_server,
|
|
)
|
|
from astrai.inference.network.protocol import GenContext, ProtocolHandler, StopChecker
|
|
from astrai.inference.network.tool_parser import (
|
|
BaseToolParser,
|
|
SimpleJsonToolParser,
|
|
ToolParserFactory,
|
|
)
|
|
|
|
__all__ = [
|
|
"ProtocolHandler",
|
|
"StopChecker",
|
|
"GenContext",
|
|
"BaseToolParser",
|
|
"SimpleJsonToolParser",
|
|
"ToolParserFactory",
|
|
"AnthropicMessage",
|
|
"ChatCompletionRequest",
|
|
"ChatMessage",
|
|
"FunctionDef",
|
|
"ToolDef",
|
|
"MessagesRequest",
|
|
"get_app",
|
|
"run_server",
|
|
]
|