把每种操作交给合适的后端。
用决策模型处理有限选项和评分,用 LLM 处理原文抽取与开放式生成。两类后端独立配置。
def annotate(anno):
kind = anno.choice(
"Classify this document.",
{"event": "A specific event",
"other": "Other content"},
).choice
summary = ""
if kind == "event":
summary = anno.generate(
"Summarize the event.",
max_length=100,
max_num_tokens=128,
).text
return {"kind": kind,
"summary": summary}{ "kind": …, "summary": … }AnnoScript/Programmable AI Annotation
一条流程,每一步交给合适的模型。真实数据管线需要的不只是一段回答,还需要判断、原文证据,以及能被代码直接使用的结果。
用决策模型处理有限选项和评分,用 LLM 处理原文抽取与开放式生成。两类后端独立配置。
用 Python 描述分支、循环和约束。AnnoScript 编译程序,协调依赖、批次与按条件触发的生成。
调用模型前查看 IR,执行时追踪实际请求与返回用量。用自己的工作负载验证质量和成本。
试用真实的汽车舆情标注流程:Jev 负责分类,Qwen 抽取证据并生成文本。每个字段都通过 AnnoScript 执行。
将输出赋给 result。 修改程序后点击「运行 Python」。
Python 在浏览器隔离线程运行,包含标准库和真实 AnnoScript 编译器、运行时。input_data 是 JSON 输入,result 可为任意 JSON 兼容结果。用 await run(函数, input_data) 执行 AnnoScript 模型流程;AnnoScript 函数内部遵循编译器支持的 Python 语法。模型会话限 120 秒、12 个请求、8192 输出 token 预算。「停止」会终止线程,模型密钥始终留在服务端。
↳自由编辑和执行 Python,也可探索完整汽车标注示例。模型输出为预测结果。
安装 AnnoScript,离线查看执行计划。准备好后,连接模型服务开始运行。
编译器和远程客户端也支持 Python 3.10+。本地推理需同时配置 Decision 与 Generation 服务。
pip install 'annoscript[server]'
python -m annoscript.inspect $(python -c "import annoscript_examples,pathlib; print(pathlib.Path(annoscript_examples.__file__).with_name('request.json'))")# 查看编译后的流程,无需 API Key。
python -m annoscript.inspect $(python -c "import annoscript_examples,pathlib; print(pathlib.Path(annoscript_examples.__file__).with_name('request.json'))")# Create a local .credential file with ANNO_* settings.
# 填写你的 Decision 和 Generation 地址、模型与密钥。
python -m annoscript_examples.run --env-file .credential \
--mode speculative在 .credential 中填写服务地址、模型名称与 API Key。合成示例将使用这些服务执行。
让决策有类型。
让组合有可能。