Documentation Index
Fetch the complete documentation index at: https://docs.responsibleailabs.ai/llms.txt
Use this file to discover all available pages before exploring further.
RAILMiddleware は、LLMレスポンスを生成する任意の非同期関数をラップし、LLM呼び出しロジックを変更することなく自動RAILスコアリングを追加します。
import asyncio
from rail_score_sdk import RAILMiddleware
async def my_llm(messages, **kwargs):
# ここにあなたのLLM呼び出し — 文字列を返します
return "LLMがこの応答を生成しました。"
async def main():
mw = RAILMiddleware(
api_key="YOUR_RAIL_API_KEY",
generate_fn=my_llm,
threshold=7.0,
policy="block",
eval_input=True,
input_threshold=5.0,
)
result = await mw.run(
messages=[
{"role": "system", "content": "あなたは役立つアシスタントです。"},
{"role": "user", "content": "量子コンピューティングについて説明してください。"},
]
)
print(f"スコア: {result.score}, 閾値を満たしました: {result.threshold_met}")
print(f"コンテンツ: {result.content}")
asyncio.run(main())
パラメータ
| パラメータ | 型 | デフォルト | 説明 |
|---|
api_key | str | — | RAIL APIキー |
generate_fn | async callable | — | あなたのLLM関数 |
threshold | float | None | このスコア未満でブロック/再生成 |
policy | str | "block" | "block" または "regenerate" |
eval_input | bool | False | 入力メッセージもスコアリング |
input_threshold | float | None | 入力スコアリングのための閾値 |
max_iterations | int | 3 | 最大再生成試行回数 |