4.1 Guard基礎
Guard Basics
Guardの役割
Guardは、スキーマ定義・バリデーター・LLM呼び出しを統合し、出力品質を担保する中心的なオブジェクトである。
from guardrails import Guard from pydantic import BaseModel class Output(BaseModel): answer: str confidence: float # Guard作成 guard = Guard.from_pydantic(Output) # LLM呼び出し result = guard( llm_api=openai.chat.completions.create, model="gpt-4", messages=[{"role": "user", "content": "質問に回答してください"}] ) print(result.validated_output)
Guardの設定オプション
| オプション | 説明 | デフォルト |
|---|---|---|
num_reasks | 最大リトライ回数 | 1 |
full_schema_reask | 全スキーマで再質問 | False |
output_schema | 追加の出力スキーマ | None |
result = guard(
llm_api=openai.chat.completions.create,
model="gpt-4",
messages=[...],
num_reasks=3,
full_schema_reask=True
)
GuardResultの構造
result.validated_output # 検証済み出力 result.raw_llm_output # LLMの生出力 result.validation_passed # 成功フラグ result.error # エラー情報
参考文献
[1] Guardrails AI - Guard - https://docs.guardrailsai.com/concepts/guard/
[1] Guardrails AI - Guard - https://docs.guardrailsai.com/concepts/guard/