docs/pydantic-ai-docs.mdXem bản gốc Bản dịch đầy đủ theo đúng cấu trúc tài liệu; code, liên kết và định danh kỹ thuật được giữ nguyên.
Tài liệu AI Pydantic
PydanticAIDocs cung cấp cho agent một công cụ duy nhất, read_pyai_docs(topic), nó định vị trang tài liệu Pydantic AI và trả về nguyên văn. Không có gì được đưa vào bối cảnh phía trước. Mỗi cuộc gọi sẽ giải quyết chủ đề từ một trang thanh toán cục bộ đã được định cấu hình trước, sau đó quay lại tìm nạp trang từ pydantic/pydantic-ai:main, do đó, nó vẫn hoạt động cho dù bạn có thanh toán cục bộ hay không (dự phòng từ xa cần truy cập mạng).
Mặc dù Pydantic AI Harness có trên các bản phát hành 0.x nhưng API có thể thay đổi giữa các bản phát hành nhỏ; khi đó, cảnh báo ngừng sử dụng và hướng dẫn di chuyển ghi chú phát hành sẽ cho bạn (hoặc người đại diện của bạn) biết chính xác cách nâng cấp. Xem chính sách phiên bản.
vấn đề
agent tạo ra các khả năng, móc, công cụ hoặc bộ công cụ Pydantic AI cần có tài liệu hiện tại cho các API đó. Việc tải trước tài liệu vào lời nhắc hệ thống sẽ dành đầy đủ bối cảnh mà agent hiếm khi cần và ghim một ảnh chụp nhanh trôi từ main.
Giải pháp
PydanticAIDocs phơi bày một công cụ, read_pyai_docs(topic), nó sẽ định vị trang được yêu cầu và trả lại nguyên văn. Mỗi cuộc gọi sẽ giải quyết chủ đề từ một trang thanh toán cục bộ đã được định cấu hình trước, sau đó quay lại tìm nạp trang từ pydantic/pydantic-ai:main, do đó, nó vẫn hoạt động cho dù bạn có thanh toán cục bộ hay không (dự phòng từ xa cần truy cập mạng).
Các chủ đề có sẵn là capabilities, hooks, tools, tools-advanced, toolsetsvà agent.
Cách sử dụng
Xây dựng một Agent với PydanticAIDocs() trong nó capabilities. điểm local_docs_path tại phần kiểm tra tài liệu Pydantic AI cục bộ để đọc từ đĩa trước hoặc bỏ qua nó để luôn tìm nạp từ nguồn từ xa:
from pathlib import Path
from pydantic_ai import Agent
from pydantic_ai_harness import PydanticAIDocs
agent = Agent(
'anthropic:claude-sonnet-4-6',
capabilities=[PydanticAIDocs(local_docs_path=Path('~/pydantic/ai/base/docs').expanduser())],
)
result = agent.run_sync('Read the toolsets docs, then explain how to build a FunctionToolset.')
print(result.output)
Khả năng này cũng bổ sung thêm một lệnh tĩnh ngắn cho mô hình biết rằng read_pyai_docs công cụ tồn tại và đọc chủ đề liên quan trước khi soạn thảo hoặc sửa đổi khả năng, hook, công cụ hoặc bộ công cụ AI của Pydantic, thay vì dựa vào bộ nhớ. Lệnh này có tính ổn định trong bộ đệm, do đó nó không làm mất hiệu lực tiền tố bộ đệm nhắc nhở giữa các lượt.
Thứ tự giải quyết
Mỗi cuộc gọi giải quyết theo thứ tự sau:
- Thanh toán tại địa phương -- khi
local_docs_path(hoặcPYDANTIC_AI_HARNESS_DOCS_PATHenv var) được đặt và{path}/{topic}.mdtồn tại, tập tin đó được đọc và trả về. - Tìm nạp từ xa -- nếu không trang sẽ được tìm nạp từ
https://raw.githubusercontent.com/pydantic/pydantic-ai/main/docs/{topic}.md. - Không giải quyết được -- một lỗi mô tả khi đặt tên đường dẫn cục bộ đã thử và URL.
Khả năng không bao giờ chạy git. Luôn cập nhật thông tin thanh toán tại địa phương; đường dẫn từ xa luôn đọc main, vì vậy đây là dự phòng mới.
local_docs_path được ưu tiên hơn PYDANTIC_AI_HARNESS_DOCS_PATH env var. Cả hai đều có ~ được mở rộng, vì vậy một bản thô ~/... đường dẫn sẽ chuyển sang thanh toán cục bộ thay vì âm thầm chuyển sang nguồn từ xa. Nếu không đặt, mọi cuộc gọi sẽ chuyển thẳng đến nguồn từ xa.
Cấu hình
| Tùy chọn | Mặc định | Mục đích |
|---|---|---|
local_docs_path | None | Kiểm tra tài liệu pyai địa phương để đọc trước. Rơi trở lại PYDANTIC_AI_HARNESS_DOCS_PATH env var, sau đó đến nguồn từ xa. |
cache | True | Ghi nhớ từng tài liệu được trả về trong quá trình xử lý trong suốt thời gian tồn tại của khả năng, do đó, một chủ đề chỉ được đọc hoặc tìm nạp nhiều nhất một lần. |
Bộ nhớ đệm tồn tại trên phiên bản khả năng và được chia sẻ trên các bộ công cụ mà nó xây dựng, do đó, một chủ đề được ghi nhớ sẽ tồn tại trong nhiều lần chạy agent tái sử dụng giống nhau PydanticAIDocs. Đặt cache=False để đọc lại hoặc tìm nạp lại trong mỗi cuộc gọi -- hữu ích khi thanh toán cục bộ thay đổi theo khả năng tồn tại lâu dài.
Thông số agent (YAML/JSON)
PydanticAIDocs hoạt động với thông số agent của Pydantic AI để xác định các agent trong YAML hoặc JSON. Tên tuần tự của nó là PydanticAIDocs:
# agent.yaml
model: anthropic:claude-sonnet-4-6
capabilities:
- PydanticAIDocs: {}
from pydantic_ai import Agent
from pydantic_ai_harness import PydanticAIDocs
agent = Agent.from_file('agent.yaml', custom_capability_types=[PydanticAIDocs])
result = agent.run_sync('...')
print(result.output)
Vượt qua custom_capability_types để trình tải thông số kỹ thuật biết cách khởi tạo PydanticAIDocs.
Thông số kỹ thuật được lưu trước khi đổi tên từ PyaiDocs sử dụng tên khối cũ. Để tiếp tục tải
họ, vượt qua những gì không được dùng nữa PyaiDocs lớp (được nhập từ pydantic_ai_harness.docs,
phát ra cảnh báo không dùng nữa) bên cạnh hoặc thay vì PydanticAIDocs -- nó giữ nguyên
cái PyaiDocs tên tuần tự hóa. Lưu lại với PydanticAIDocs để di cư.
Tham chiếu API
::: pydantic_ai_harness.pydantic_ai_docs.PydanticAIDocs