Déployer OneAPI sans serveur ?

avant-propos

 

Il y a quelque temps, j'ai accumulé quelques API que je n'utilise pas beaucoup, principalement pour la fonction de résumé de l'IA du blog. J'oublie souvent les mots de passe de mes comptes pour ces plateformes, ce qui m'a décidé à utiliser OneAPI pour une gestion unifiée. Malgré les tutoriels complets fournis par les auteurs de OneAPI, certains utilisateurs (dont je fais partie) ont encore rencontré quelques problèmes mineurs lors du déploiement. Par conséquent, après un déploiement réussi, j'ai décidé d'écrire ce guide de déploiement détaillé pour ceux qui ne sont pas bien rodés, en espérant qu'il vous aidera à passer à travers le processus avec moins d'obstacles.

 

 

Projets

 

OneAPI Le projet est un système ouvert de gestion et de distribution d'interfaces qui prend en charge un large éventail de modèles de langage à grande échelle, tels que ChatGPT d'OpenAI, Azure, Anthropic Claude, Google PaLM 2&. Gémeaux etc. Il est destiné à la gestion et à la redistribution des clés, peut être déployé via un seul exécutable ou Docker, et fournit une API simple et unifiée pour accéder à différents grands modèles de langage. Le système est open source, sous licence MIT, et fournit des fonctionnalités telles que la prise en charge des modèles, la gestion des jetons et la gestion des groupes d'utilisateurs. Pour les instructions de déploiement et de configuration, les utilisateurs doivent se référer aux dépôts GitHub et à la documentation du projet.

 

 

Construction du projet

 

Ce projet fournit des images Docker pour simplifier le processus de déploiement. Nous pouvons déployer plus facilement.

Par défaut, une base de données SQLite est utilisée, et si la variable d'environnement SQL_DSN n'est pas définie, les fichiers de la base de données sont stockés dans le chemin spécifié par le conteneur Docker. Si la variable d'environnement SQL_DSN est définie, l'application se connectera à la base de données MySQL ou PostgreSQL spécifiée. Cela permet de ne pas perdre les modifications précédentes lorsque nous redéployons ou retirons l'image.

 

vouloir

  • Plateformes de conteneurs gratuites qui prennent en charge Docker, telles que Render ou Zeabur.
  • Base de données MySQL ou PostgreSQL (facultatif, recommandé pour la persistance des données).
  • Un nom de domaine (facultatif).

 

Étapes du déploiement

  • Hugging Face : Rapide mais ne supporte pas les noms de domaine liés, l'accès national peut être limité.
  • Rendu : Les domaines groupés sont pris en charge, l'enregistrement peut nécessiter une carte de crédit groupée.
  • Koyeb : Les domaines groupés sont pris en charge, un plan de mise à niveau est nécessaire.
  • Zeabur : Accès rapide, support chinois, le déploiement d'images Docker nécessite un plan de mise à jour.

 

Processus de déploiement

Déploiement de huggingface

 

1. copier l'image Docker

cliquer sur un boutonCopie miroir en un clic Configurez THEME (thème de l'interface tel que default ou berry) et SQL_DSN (connexion à la base de données). Je vais les énumérer en détail ci-dessous.

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

Les effets des différents thèmes sont les suivants, à choisir selon vos préférences.

 

Thème par défaut

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

Thème des baies

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

2. configuration de la base de données

  • Utilisez un service de base de données gratuit tel que aiven ou Planetscale, ou les bases de données gratuites fournies avec Render et Koyeb ; configurez la variable d'environnement SQL_DSN pour le projet.
  • Exemple MySQL. SQL_DSN=root:123456@tcp(localhost:3306)/oneapi
  • Exemples PostgreSQL. SQL_DSN=postgres://postgres:123456@localhost:5432/oneapi

 

2.1s'inscrire et se connecterNous y sommes. aiven s'inscrire ou se connecter à son compte.

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

2.2Remplir les informationsSélectionnez Services aux particuliers et remplissez les informations de base.

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

2.3Sélectionner la base de donnéesSélectionnez la base de données MySQL ou PostgreSQL.

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

2.4Configuration de la base de donnéesCochez le plan gratuit, sélectionnez la zone de service, et enfin cliquez sur Créer.

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

2.5Configuration finaleMémorisez les informations contenues dans le diagramme et tapez sur le bouton pour passer tout le texte. Ce n'est pas grave si vous ne vous en souvenez pas, nous pouvons les voir après les avoir toutes sautées.

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

3. compléter les variables

 

En se basant sur les informations de la base de données figurant dans la figure, on obtient ceci :

Service URI.
mysql://CLICK_TO:REVEAL_PASSWORD@mysql-12a9c26-jonastech007-2d92.b.aivencloud.com:10906/defaultdb?ssl-mode=必需

Hôte.
mysql-12a9c26-jonastech007-2d92.b.aivencloud.com

Port.
10906

Utilisateurs :
avnadmin

Mot de passe :
AVNS_QV8niFI8YW48vKqxi3R

L'adresse de notre lien doit être rédigée comme suit : username:password@tcp(Host:Port)/database name

Nous avons obtenu avnadmin:AVNS_QV8niFI8YW48vKqxi3R@tcp(mysql-12a9c26-jonastech007-2d92.b.aivencloud.com:10906)/defaultdb.

Remplir ce lien dans la variable et enfin cliquer sur copier dans l'espace. Espace dupliqué

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

 

4. l'accès

 

À ce stade, nous pouvons trouver les paramètres en cliquant sur le coin supérieur droit de l'écran d'accueil.Intégrer cet espaceL'accès à nos services se fait par le lien ci-dessous.

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

Déploiement de Koyeb

 

1. cliquer pour entrerKoyeb Après vous être connecté et enregistré sur le site officiel, cliquez sur Create Web Service pour sélectionner l'image docker.

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

2) Dans la boîte de saisie, tapez justsong/one-api:latest , si vous ne savez pas d'où cela vient, vous pouvez consulter le site web du projet open source.compose.yml.

version : '3.4'

les services.
one-api.
image : "${REGISTRY:-docker.io}/justsong/one-api:latest"
Nom du conteneur : one-api
redémarrage : toujours
commande: --log-dir /app/logs
ports.
- "3000:3000"
volumes.
- . /data/oneapi:/data
- . /logs:/app/logs
l'environnement.
- SQL_DSN=oneapi:123456@tcp(db:3306)/one-api # Modifiez cette ligne ou mettez-la en commentaire pour utiliser SQLite comme base de données.
- REDIS_CONN_STRING=redis://redis
- SESSION_SECRET=chaîne_aléatoire # Modifié en chaîne aléatoire
- TZ=Asie/Shanghai
# - NODE_TYPE=slave # Décommenter cette ligne pour les nœuds esclaves dans un déploiement multi-ordinateurs
# - SYNC_FREQUENCY=60 # Décommentez cette ligne si vous devez charger périodiquement des données à partir de la base de données.

 

${REGISTRY:-docker.io} est une expression de variable d'environnement indiquant que si la variable d'environnement REGISTRY n'est pas définie, la valeur par défaut de docker.io (Docker Hub) est utilisée.
justsong/one-api:latest spécifie le nom et le label de l'image, où justsong est le nom de l'utilisateur ou de l'organisation sur le Docker Hub, one-api est le nom de l'image, et latest indique que la dernière version de cette image est utilisée.

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

3) Définissez les variables et les informations régionales nécessaires et cliquez sur le bouton Déployer.

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

4. en attendant que le déploiement soit terminé, nous pouvons cliquer sur cette adresse pour accéder à notre One API.

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

5. le compte administrateur par défaut est

  • Nom d'utilisateur:root
  • Mot de passe:123456

Les modifications doivent être effectuées dans la section Utilisateurs immédiatement après la connexion, ce qui permet de sécuriser le compte.

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

 

Utilisation

 

Étant donné que la plupart des personnes qui peuvent lire mon article sont des débutants, je vais brièvement démontrer son utilisation. L'API gratuite présentée dans l'article de blog ci-dessusbrûler dans sa tête Exemples.

Pour ceux d'entre vous qui ne s'en souviennent pas, vous pouvez le découvrir par vous-même ou regarder la vidéo de l'événement. Cet article de blog

 

Configuration de OneAPI

 

1) Après vous être connecté à votre compte d'administrateur OneAPI, localisez le fichierfossé d'irrigation, cliquezNouveaux canaux

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

2. le nom du canal peut être nommé, l'adresse API du canal est l'adresse de transmission, il suffit de remplir l'adresse de demande, puis de sélectionner le modèle de support, d'ajouter votre CLÉ API, et enfin de soumettre.

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

3) Enfin, nous cliquons sur non testé mesure la connectivité de l'API.

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

4. à l'issue du test, nous serons en mesure dejetonSi vous le souhaitez, vous pouvez également partager votre site après avoir ajouté de nombreuses API pour que tout le monde puisse les utiliser. Si vous le souhaitez, vous pouvez également partager votre site après avoir ajouté de nombreuses API et laisser les gens les utiliser.
Nous avons juste besoin de maintenir chaque canal API en arrière-plan, comme pour notre adresse de requête OneAPI, c'est notre nom de domaine par défaut, vous pouvez également le changer dans les paramètres.

无需服务器一键部署OneAPI? | OneAPI 部署使用指南

 

无需服务器一键部署OneAPI? | OneAPI 部署使用指南
© déclaration de droits d'auteur

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...