AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
翻譯準備中
正在載入完整 README。 以下為已儲存的摘錄。
One Python interface for chat, streaming, tool calls, and structured output across AI providers. Republic stops at providers; agent loops, tool execution, and gateways stay in your code.
Republic requires Python 3.11 or later.
A model is named provider:model. Switch services by changing the name, such as anthropic:MODEL_ID, google:MODEL_ID, or deepseek:MODEL_ID; each reads its key from REPUBLIC_ _API_KEY. See the provider directory for every supported service.檢視完整 README ↗One Python interface for chat, streaming, tool calls, and structured output across AI providers. Republic stops at providers; agent loops, tool execution, and gateways stay in your code.
Republic requires Python 3.11 or later.
python -m pip install republic
export REPUBLIC_OPENAI_API_KEY="your-api-key"
import asyncio
import republic
from republic.events import TextDelta
async def main():
model = republic.get_model("openai:gpt-6-sol")
response = await model.chat("Explain a tool call in one sentence.")
print(response.text)
async with model.stream("Explain how an agent uses a tool result.") as stream:
async for event in stream:
if isinstance(event, TextDelta):
print(event.chunk, end="", flush=True)
asyncio.run(main())
A model is named provider:model. Switch services by changing the name, such as anthropic:MODEL_ID, google:MODEL_ID, or deepseek:MODEL_ID; each reads its key from REPUBLIC_<PROVIDER>_API_KEY. See the provider directory for every supported service.
uv sync
make check
make test
make build
See Contributing for the development workflow.