掘金 人工智能 09月04日
POML Python 集成参考
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文基于 POML 官方文档的 Integration 参考页面,梳理 Python 端提供的集成模块与关键 API/类,包括 agentops、langchain、mlflow、pydantic 与 weave。内容严格来自文档页面,并以结构化方式呈现功能说明与示例。

🔹 AgentOps 集成(poml.integration.agentops):提供 log_poml_call(name, prompt, context, stylesheet, result) API,用于将一次完整的 poml 调用记录到 AgentOps,方便追踪和调试。

📄 LangChain 集成(poml.integration.langchain):通过 LangchainPomlTemplate 类兼容 LangChain 的 PromptTemplate,实现以 POML 进行格式化,支持“说话人模式(speaker modes)”与结构化内容,增强对话系统的灵活性和可扩展性。

📊 MLflow 集成(poml.integration.mlflow):提供 log_poml_call(name, prompt, context, stylesheet, result) API,用于将一次完整的 poml 调用记录到 MLflow,支持实验跟踪和模型管理,方便进行版本控制和性能分析。

🔑 Pydantic 集成(poml.integration.pydantic):包含 NotGiven 类型用于区分“未提供实参”与显式传入 None,is_dataclass_like_type 函数判断给定类型是否可能使用了 @pydantic.dataclass,以及 to_strict_json_schema 函数将 Pydantic 模型转换为严格 JSON Schema,适配 OpenAI 的函数调用与响应格式。

🔗 Weave 集成(poml.integration.weave):提供 log_poml_call(name, prompt, context, stylesheet, result) API,用于将一次完整的 poml 调用记录到 Weave,支持项目管理和协作,方便团队成员共享和审查代码。

POML Python 集成参考:AgentOps / LangChain / MLflow / Pydantic / Weave

导语

本文基于 POML 官方文档的 Integration 参考页面,梳理 Python 端提供的集成模块与关键 API/类,包括 agentopslangchainmlflowpydanticweave。内容严格来自文档页面,并以结构化方式呈现功能说明与示例。

模块总览


AgentOps 集成(poml.integration.agentops

功能介绍

关键 API

文档示例

# 文档中的函数实现示例(节选)@agentops.operation(name="poml")def poml(prompt, context, stylesheet):    return resultpoml(prompt, context, stylesheet)

LangChain 集成(poml.integration.langchain

功能介绍

关键类与属性

使用示例(来自文档)

# 由模板字符串创建>>> template = LangchainPomlTemplate.from_template(...     "Hello {{name}}!", speaker_mode=True... )>>> result = template.format(name="Alice")
# 由 POML 文件加载>>> template = LangchainPomlTemplate.from_file(...     "path/to/template.poml", speaker_mode=False... )>>> result = template.format(user_input="What is AI?")

MLflow 集成(poml.integration.mlflow

功能介绍

关键 API

文档示例

# 文档中的函数实现示例(节选)@mlflow.tracedef poml(prompt, context, stylesheet):    return resultprompt_registered = mlflow.genai.register_prompt(    name=name,    template=prompt,    tags={"format": "poml", "source": "auto"},)poml(prompt, context, stylesheet)

Pydantic 集成(poml.integration.pydantic

功能介绍

关键 API

使用示例(来自文档)

from pydantic import BaseModel, Fieldfrom poml.integration.pydantic import to_strict_json_schemaclass Query(BaseModel):    name: str = Field(description="Query name")    limit: int = Field(description="Result limit", default=10)schema = to_strict_json_schema(Query)# 返回一个严格 JSON Schema(additionalProperties: false)

Weave 集成(poml.integration.weave

功能介绍

关键 API

文档示例

# 文档中的函数实现示例(节选)@weave.opdef poml(prompt, context, stylesheet):    return resultprompt_ref = weave.publish(prompt, name=name)if context is not None:    context_ref = weave.publish(context, name=name + ".context")else:    context_ref = contextif stylesheet is not None and stylesheet != "{}":    stylesheet_ref = weave.publish(stylesheet, name=name + ".stylesheet")else:    stylesheet_ref = stylesheetpoml(prompt_ref, context_ref, stylesheet_ref)

总结

本文按官方 Integration 参考页面整理了五个 Python 集成模块的用途与核心 API/类,并给出了文档中的示例片段:

更多细节请参考官方文档页面:

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

POML Python AgentOps LangChain MLflow Pydantic Weave 集成 API 参考
相关文章