در LibreChat با فایل librechat.yaml یک endpoint سفارشی برای API پیکو هوش تعریف کنید؛ baseURL، فهرست مدلها، titleModel و تنظیمات Docker.
پیکو هوش·انتشار: ·بهروزرسانی: ·۵ دقیقه مطالعه
خلاصه: LibreChat یک رابط چت متنباز با پشتیبانی از چند ارائهدهنده است. APIهای سازگار با OpenAI را از طریق بخش endpoints.custom در فایل librechat.yaml اضافه میکنید. با baseURL: https://api.picoai.ir/v1 همهی مدلهای چت پیکو هوش در منوی LibreChat ظاهر میشوند.
پیشنیاز
نصب LibreChat با Docker طبق راهنمای رسمی (مخزن danny-avila/LibreChat). در پوشهی پروژه، فایل .env و docker-compose.yml دارید. فایل librechat.yaml را باید در ریشهی پروژه بسازید و در compose به کانتینر api مونت کنید (در راهنمای رسمی با فایل docker-compose.override.yml توضیح داده شده است).
apiKey با نحو ${VAR} از .env خوانده میشود، پس کلید در YAML نمیماند.
models.default فهرست دستی مدلهاست؛ با fetch: true میتوانید فهرست را از بخوانید، اما آن فهرست شامل مدلهای تصویر و صدا هم هست. برای مرتببودن منو، فهرست دستی بهتر است. شناسهها را از بردارید.
titleModel مدلی است که عنوان گفتگو را میسازد؛ مدل اقتصادی بگذارید.
شمارهی version در نمونهی مستندات فعلی 1.3.18 است؛ آن را مطابق نسخهی نصبشدهی LibreChat از مستندات رسمی بگیرید (مستندات توضیح نمیدهد دقیقاً چه چیزی را کنترل میکند). فیلدهای name، apiKey، baseURL و models.default الزامیاند؛ fetch بهصورت پیشفرض false است و models.default در صورت شکست fetch نقش پشتیبان را دارد.
اگر با یک مدل خطای 400 گرفتید، ابتدا این فیلدها را حذف کنید. همچنین addParams برای اضافهکردن پارامتر ثابت وجود دارد. هر دو گزینه (dropParams آرایهای از نام پارامترها و addParams یک شیء) در مستندات رسمی custom endpoints آمدهاند؛ همچنین headers برای افزودن هدر دلخواه (مقادیر باید رشته باشند) وجود دارد.
کنترل هزینه و کاربران
مانند هر رابط چندکاربره، همهی کاربران با یک کلید مصرف میکنند. برای این کار کلید جدا با سقف ماهانه بسازید، ثبتنام عمومی را در .env ببندید (ALLOW_REGISTRATION=false) و تنها مدلهای لازم را فهرست کنید. فرمول هزینه: تخمین هزینه؛ قیمتها: pricing.
محدودیتها
قابلیت جستجوی RAG/فایل در LibreChat به embeddings نیاز دارد؛ پیکو هوش اندپوینت embeddings ندارد، پس آن بخش را با سرویس یا مدل جداگانه تنظیم کنید.
مدلهای تصویر/صدا از این endpoint چت قابل استفاده نیستند.
میتوانید چند بلوک custom با نامهای متفاوت داشته باشید؛ مثلاً یکی برای تیم پشتیبانی با مدل ارزان و یکی برای تیم فنی با مدل قوی. هر endpoint میتواند کلید جدا داشته باشد تا مصرف تیمها قابل تفکیک باشد:
LibreChat امکان ساخت Preset (پرامپت سیستم، دما و مدل پیشفرض) دارد. برای یک چتبات سازمانی، پرامپت سیستم مختصر و دقیق بنویسید: نقش، لحن، محدودیتها و اینکه اگر پاسخ را نمیداند اعلام کند. پرامپتهای بلند در هر پیام تکرار میشوند و روی هزینه اثر میگذارند، هرچند بخش ثابت آن ممکن است کش شود و با ۲۵٪ قیمت ورودی حساب شود.
بهروزرسانی و نگهداری
پروژه فعال است و قالب librechat.yaml از نسخهای به نسخهی دیگر تغییر میکند. پیش از بهروزرسانی تصویر Docker، یادداشتهای انتشار را بخوانید، فایل yaml و .env را پشتیبان بگیرید و بعد از ارتقا، فهرست مدلها و استریم را تست کنید. اگر پس از ارتقا endpoint ناپدید شد، لاگ کانتینر معمولاً خط خطای اعتبارسنجی schema را نشان میدهد.
نکات احراز هویت و دسترسی
LibreChat سیستم کاربری خودش را دارد (ایمیل/رمز یا ورود اجتماعی). برای نصب سازمانی، ثبتنام را ببندید و کاربران را دستی اضافه کنید، رمزهای پیشفرض .env (مانند JWT_SECRET و CREDS_KEY) را حتماً با مقدار تصادفی جایگزین کنید و پایگاه دادهی MongoDB را از دسترسی عمومی خارج نگه دارید. همچنین اگر چند endpoint با کلیدهای متفاوت دارید، کلیدها را در .env نگه دارید و در yaml فقط به آنها ارجاع دهید. مصرف هر کلید را در داشبورد پیکو هوش و با راهنمای هزینه بررسی کنید و در صورت لزوم برای هر تیم سقف ماهانه تعریف کنید.
تست سریع اتصال بدون LibreChat
پیش از ویرایش yaml، با یک فراخوانی curl ساده مطمئن شوید کلید و مدل درستاند؛ این کار زمان عیبیابی را کم میکند:
curl https://api.picoai.ir/v1/models -H "Authorization: Bearer YOUR_API_KEY" | head -c 400
سوالات متداول
آیا باید fetch را true کنم؟
فقط اگر میخواهید همهی مدلها را ببینید. برای تجربهی بهتر فهرست دستی پیشنهاد میشود.