درس تطبيقي · متاح
ضع جاردرينو أمام تطبيقك المتوافق مع OpenAI
ثلاث خطوات، ولا يتغيّر في تطبيقك سوى عنوان واحد.
الحالة: متاح. هذا التكامل مبنيّ ومُختبَر. تتلقى الشركات المشاركة في البرنامج التجريبي حزمة جاردرينو من HisnLabs.
مرجع المطوّرين · دليل التثبيت · منصات الذكاء الاصطناعي · بطاقة النموذج المفتوح · وكيل متوافق مع OpenAI · البث · LiteLLM · وكيل أمان MCP · درس: LiteLLM · درس: أدوات MCP
جرّبه اليوم Guardrino-t7 Open، نسخة سابقة من المصنِّف، متاح للعموم على Hugging Face بترخيص Apache-2.0. يعمل العرض التجريبي في متصفحك: ما تكتبه يبقى على جهازك. عرض تجريبي مباشر · بطاقة النموذج · العرض نفسه على Hugging Face
الخطوة 1 · حدّد الواجهة الأمامية
يجب تثبيت جاردرينو أولًا (راجع دليل التثبيت). في ملف السياسة أضف القسم [proxy] الذي يسمّي واجهة النموذج التي يستخدمها تطبيقك اليوم.
block_status = 403 # answer a refused message with HTTP 403 (default 400)
[proxy]
upstream = "https://llm.example/v1" # the model API Guardrino forwards to
api_key = "UPSTREAM_KEY" # optional: when unset, the caller's key is passed through
buffer_output = false # true: hold the reply until it has been checkedاحذف api_key إن كان تطبيقك سيواصل إرسال مفتاحه الخاص، فيمرّره جاردرينو كما هو.
الخطوة 2 · غيّر العنوان الأساسي
في تطبيقك، استبدل العنوان الأساسي لمزوّد النموذج بعنوان جاردرينو. لا يتغيّر شيء آخر.
from openai import OpenAI
# The only change: the base URL (and the key your Guardrino deployment expects).
client = OpenAI(base_url="https://guardrino.example/v1", api_key="YOUR_KEY")
reply = client.chat.completions.create(
model="your-model",
messages=[{"role": "user", "content": "Summarise this ticket."}],
user="conversation-7f3a", # becomes the conversation_id
)لربط أدوار المحادثة دون تعديل شيفرتك، أرسل القيمة نفسها في الحقل user أو في الترويسة X-Guardrino-Conversation مع كل دور.
الخطوة 3 · تأكد من أنه يعمل
أرسل رسالة عادية ثم رسالة ترفضها سياستك. الأولى تعيد ردّ النموذج، والثانية تعيد خطأً بصيغة خطأ OpenAI.
curl https://guardrino.example/v1/chat/completions \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-H "X-Guardrino-Conversation: conversation-7f3a" \
-d '{"model": "your-model", "messages": [{"role": "user", "content": "Hello"}]}'إن كان تطبيقك يبثّ الردود، فاقرأ صفحة البث لتختار بين الأجزاء المباشرة وbuffer_output = true.