用途
inference.sh Python SDK 用于在 Python 应用中运行 AI 应用、构建智能体(Agent),并与平台上的各类模型集成。包名为 inferencesh,通过 pip 安装。
安装与认证
标准安装:
pip install inferencesh
带异步支持安装:
pip install inferencesh[async]
要求 Python 3.8+。认证方式支持直接传入 API Key,或从环境变量读取(推荐):
import os
from inferencesh import inference
client = inference(api_key="inf_your_key")
client = inference(api_key=os.environ["INFERENCE_API_KEY"])
API Key 获取路径:Settings → API Keys → Create API Key。
主要能力
运行应用
基本执行:
result = client.run({
"app": "infsh/flux-1-dev",
"input": {"prompt": "A cat astronaut"}
})
print(result["status"]) # "completed"
print(result["output"])
支持“发射后不管”(wait=False)返回任务 ID,之后用 client.get_task(task['id']) 查询;也支持 stream=True 流式获取进度更新。
运行参数包括:app(应用 ID,namespace/name@version)、input(符合应用 schema 的输入)、setup(隐藏的 setup 配置)、infra('cloud' 或 'private')、session(有状态执行的会话 ID)、session_timeout(空闲超时,1-3600 秒)。
文件处理
支持自动上传(在 input 中直接传文件路径)与手动上传(client.upload_file,可配合 UploadFileOptions 设置 filename、content_type、public)。
会话(有状态执行)
通过 session="new" 启动新会话并设置 session_timeout,后续调用传入返回的 session_id 以在同一会话中继续,保持 worker 处于热状态。
Agent SDK
可使用工作区中的模板 Agent:client.agent("my-team/support-agent@latest"),支持 send_message、reset、get_chat。也可通过代码创建临时 Agent,指定 core_app、system_prompt、tools、temperature、max_tokens 等。
可用核心应用包括:Claude Sonnet 4(infsh/claude-sonnet-4@latest)、Claude 3.5 Haiku(infsh/claude-haiku-35@latest)、GPT-4o(infsh/gpt-4o@latest)、GPT-4o Mini(infsh/gpt-4o-mini@latest)。
工具构建 API
参数类型包括 string、number、integer、boolean、enum_of、array、obj、optional。工具类型包括:客户端工具(tool,在自身代码中运行,可 require_approval)、应用工具(app_tool,调用 AI 应用,可设置 setup 与 input)、Agent 工具(agent_tool,委派给子 Agent)、Webhook 工具(webhook_tool,调用外部 API,可设置 secret)、内部工具(internal_tools,内置能力如 plan、memory、web_search、code_execution、image_generation)。
流式响应与文件附件
Agent 的 send_message 支持 on_message 与 on_tool_call 回调实现流式输出;支持通过文件路径或 base64 附加文件。
Skills(可复用上下文)
可在创建 Agent 时传入 skills 列表,每项包含 name、description,以及 content 或 url。
异步支持
使用 async_inference 创建客户端,配合 await 执行应用、Agent 与异步流式消息(stream_messages)。
错误处理与人工审批
可捕获 RequirementsNotMetException(含 e.errors 列表)与 RuntimeError。工具可标记 requires_approval,在 on_tool_call 中向用户确认后提交结果或返回拒绝。
适用场景
适合需要在 Python 项目中调用 inference.sh 平台 AI 应用、构建多轮对话 Agent、编排工具调用、处理文件上传与流式输出的开发者。
限制
资料未提供具体收费、价格、平台支持范围或性能效果等信息,暂未提供。