मैं खुश हूं यह घोषणा करते हुए कि AWS EC2 पर LibreChat के स्वचालित परिनियोजन के मेरे प्रोजेक्ट को हाल ही में LibreChat को स्थापित करने के तरीके में आए हाल के बदलावों से संबंधित समस्याओं को ठीक करने के लिए अपडेट किया गया है, और अब संस्करण v0.7.6 का समर्थन करता है। इस अपडेट में ऑन-डिमांड और स्पॉट इंस्टेंस के बीच चयन करने की क्षमता भी शामिल है, साथ ही उपयोग को सरल बनाने के लिए सुधार भी हैं, यहां तक कि शुरुआती लोगों के लिए भी।
इस अपडेट में नया क्या है?
LibreChat संस्करण v0.7.6 का समर्थन
प्रोजेक्ट सीधे LibreChat के टैग v0.7.6
को क्लोन करता है, यह सुनिश्चित करते हुए कि सभी परिनियोजन एक वैध और परीक्षण किए गए संस्करण का उपयोग करते हैं। यह मुख्य रिपॉजिटरी में अप्रत्याशित परिवर्तनों से संबंधित आश्चर्यों से बचाता है।
User-Data स्क्रिप्ट में अपडेट किया गया कोड:
# Clone le dépôt LibreChat avec uniquement le tag v0.7.6
git clone --branch v0.7.6 --depth 1 https://github.com/danny-avila/LibreChat.git
cd LibreChat/
ऑन-डिमांड और स्पॉट इंस्टेंस का प्रबंधन
मैंने Terraform में एक वैरिएबल spot_enabled
जोड़ा है जो यह चयन करने की अनुमति देता है कि परिनियोजन स्पॉट या ऑन-डिमांड इंस्टेंस का उपयोग करेगा। डिफ़ॉल्ट रूप से, ऑन-डिमांड मोड सक्रिय है ताकि शुरुआती लोगों के लिए एक अधिक सुलभ अनुभव प्रदान किया जा सके, जिससे स्पॉट कीमतों को कॉन्फ़िगर करने की आवश्यकता नहीं पड़ती। यह सुनिश्चित करता है कि प्रोजेक्ट सभी के लिए तुरंत कार्यात्मक है।
ec2.tf
से अपडेट किया गया अंश:
# Bloc dynamique pour conditionner les options du marché Spot
dynamic "instance_market_options" {
for_each = var.spot_enabled ? [1] : [] # Si spot_enabled est true, le bloc est créé
content {
market_type = "spot"
spot_options {
max_price = var.spot_max_price[var.instance_type]
instance_interruption_behavior = var.spot_request_type == "persistent" ? "stop" : null
spot_instance_type = var.spot_request_type
}
}
}
variables.tf
से अंश:
variable "spot_enabled" {
description = "Active ou désactive l'utilisation du marché Spot"
type = bool
default = false
}
Terraform संस्करण का अपडेट
प्रोजेक्ट में उपयोग किए गए Terraform के संस्करण को 1.5.7
से 1.10.3
में अपडेट किया गया है। यह Terraform की नवीनतम विशेषताओं और सुधारों के साथ संगतता सुनिश्चित करता है।
# Version de l'image Docker Terraform
TERRAFORM_VERSION: hashicorp/terraform:1.10.3
Mistral मॉडल की कॉन्फ़िगरेशन के लिए फिक्स
नवीनतम संस्करण में प्रारूप में आए बदलावों को संभालने के लिए librechat.yaml
में Mistral की कॉन्फ़िगरेशन को अपडेट किया गया है। API कुंजी अभी भी AWS Systems Manager (SSM) से प्राप्त की जाती है, अन्य मॉडलों की तरह, और डिफ़ॉल्ट मॉडलों में अब mistral-large-latest
शामिल है।
अपडेट किया गया कोड:
# Remplace la ligne contenant apiKey: '${MISTRAL_API_KEY}' par la clé réelle dans librechat.yaml
sed -i "s|apiKey: '\${MISTRAL_API_KEY}'|apiKey: '${MISTRAL_API_KEY}'|" librechat.yaml
# Modèles par défaut pour Mistral
sed -i '/- name:.*Mistral/,/default:/ s|default:.*|default: [\'mistral-tiny\', \'mistral-small\', \'mistral-medium\', \'mistral-large-latest\']|' librechat.yaml
बहुभाषी README फ़ाइलों का जोड़
दुनिया भर में अधिक उपयोगकर्ताओं के लिए प्रोजेक्ट को सुलभ बनाने के लिए, मैंने अपने एआई-आधारित मार्कडाउन अनुवादक स्क्रिप्ट का उपयोग किया है, जो GPT-4o मॉडल द्वारा संचालित है, कई भाषाओं में README फ़ाइलें उत्पन्न करने के लिए। समर्थित भाषाओं में अंग्रेजी, जर्मन, स्पेनिश, जापानी, कोरियाई और चीनी शामिल हैं।
जोड़ी गई फ़ाइलें:
README-de-gpt-4o.md
README-en-gpt-4o.md
README-es-gpt-4o.md
README-ja-gpt-4o.md
README-ko-gpt-4o.md
README-zh-gpt-4o.md
Nginx कॉन्फ़िगरेशन का अपडेट
SSL के लिए डिफ़ॉल्ट रूप से प्रदान की गई Nginx कॉन्फ़िगरेशन इस संस्करण में अप्रचलित थी। मैंने निर्देशों को समायोजित करके और संगतता सुनिश्चित करने के लिए sed
कमांड के साथ SSL प्रमाणपत्रों के समर्थन को जोड़कर इसे ठीक किया है।
अपडेट किया गया कोड:
# Monter les certificats SSL dans le fichier deploy-compose.yml
sed -i '/- .\/client\/nginx.conf:\/etc\/nginx\/conf.d\/default.conf/a \ - \/etc\/nginx\/ssl:\/etc\/nginx\/ssl' deploy-compose.yml
# Corrige les directives dans nginx.conf pour la version récente de Nginx
sed -i '/listen 443 ssl;/!s/listen 443 ssl;/listen 443 ssl http2;/' client/nginx.conf
sed -i '/listen \[::\]:443 ssl;/!s/listen \[::\]:443 ssl;/listen [::]:443 ssl http2;/' client/nginx.conf
# Corriger les erreurs de commentaire sur les URLs
sed -i 's|https://docs.nginx.com/nginx/admin-guide/web-server/compression/|# https://docs.nginx.com/nginx/admin-guide/web-server/compression/|' client/nginx.conf
sed -i 's|https://docs.nginx.com/nginx/admin-guide/web-server/compression/|# &|' client/nginx.conf
Terraform में सुधार
- बेहतर प्रदर्शन के लिए डिफ़ॉल्ट इंस्टेंस प्रकार को
t3a.micro
सेt3a.small
में बदला गया है। - वर्तमान लागतों को प्रतिबिंबित करने के लिए
variables.tf
में स्पॉट कीमतों को अपडेट किया गया है।
variables.tf
से अपडेट किया गया अंश:
variable "spot_max_price" {
default = {
"t3a.large" = "0.0376"
"t3a.small" = "0.0095"
"t3a.medium" = "0.01940"
"t3a.micro" = "0.006"
}
}
यह अपडेट महत्वपूर्ण क्यों है
LibreChat के संस्करण को फिक्स करके, Nginx और Mistral की कॉन्फ़िगरेशन से संबंधित समस्याओं को ठीक करके, और ऑन-डिमांड और स्पॉट इंस्टेंस के बीच चयन करने की क्षमता प्रदान करके, यह अपडेट प्रोजेक्ट की विश्वसनीयता और लचीलेपन को मजबूत करता है। ऑन-डिमांड मोड डिफ़ॉल्ट रूप से सक्रिय होने के साथ, यहां तक कि शुरुआती लोग भी बिना जटिल पूर्वापेक्षाओं के LibreChat को परिनियोजित कर सकते हैं।
सारांश
- LibreChat संस्करण v0.7.6 का समर्थन: अनियंत्रित परिवर्तनों से संबंधित समस्याओं से बचने के लिए सही टैग का क्लोन।
- इंस्टेंस प्रबंधन: ऑन-डिमांड और स्पॉट के बीच चयन, उपयोगकर्ता अनुभव को सरल बनाने के लिए डिफ़ॉल्ट रूप से ऑन-डिमांड।
- Terraform संस्करण: नवीनतम सुधारों का लाभ उठाने के लिए संस्करण 1.10.3 में अपडेट।
- Mistral AI: नए प्रारूप के अनुरूप API कुंजियों और मॉडलों का स्वचालित प्रबंधन।
- बहुभाषी README: कई भाषाओं में सुलभ दस्तावेज़ीकरण।
- Nginx: नई निर्देशों के अनुरूप SSL कॉन्फ़िगरेशन को ठीक किया और अनुकूलित किया।
- Terraform: बेहतर प्रदर्शन और सही लागतों के लिए समायोजन।
पूर्ण प्रोजेक्ट देखें
आप इस प्रोजेक्ट को GitLab रिपॉजिटरी पर देख और उपयोग कर सकते हैं।
प्रतिक्रिया साझा करने या प्रोजेक्ट में योगदान करने में संकोच न करें!
इस दस्तावेज़ को संस्करण fr से भाषा hi में o1-preview मॉडल का उपयोग करके अनुवादित किया गया है। अनुवाद प्रक्रिया के बारे में अधिक जानकारी के लिए, देखें https://gitlab.com/jls42/ai-powered-markdown-translator