私は、LibreChat を AWS EC2 に自動デプロイする私のプロジェクトが、最近の LibreChat のインストール方法の変更に関連する問題を修正し、バージョン v0.7.6 をサポートするように更新されたことをお知らせできて嬉しく思います。このアップデートには、オンデマンドとスポットインスタンスの選択が可能になったことや、初心者でも簡単に利用できるようにするための改善も含まれています。

このアップデートの新機能

LibreChat バージョン v0.7.6 のサポート

このプロジェクトは直接 LibreChat のタグ v0.7.6 をクローンし、すべてのデプロイメントが検証されテストされたバージョンを使用することを保証します。これにより、メインリポジトリの予期しない変更に関連する驚きを避けることができます。

ユーザーデータスクリプトで更新されたコード:

# 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 に更新されました。これにより、最新の機能や改善点との互換性が保証されます。

# 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モデルで駆動する私の AIベースのMarkdown翻訳スクリプト を使用して、複数の言語で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 リポジトリ でこのプロジェクトを確認し、利用することができます。

お気軽にフィードバックを共有したり、プロジェクトに貢献してください!

このドキュメントは、モデルo1-previewを使用してfrバージョンからja言語に翻訳されました。翻訳プロセスの詳細については、https://gitlab.com/jls42/ai-powered-markdown-translator をご覧ください。