basketikun/chatgpt2api : implémentation inversée du protocole pur de l'interface du site Web officiel ChatGPT, prend en charge le modèle GPT-Image-2, le modèle de texte, compatible avec le protocole d'interface OpenAI, génération/édition d'images par lots en ligne, gestion du pool de comptes, prend en charge l'inversion des fichiers PPT/PSD modifiables, prend en charge l'importation de CPA, le pool de comptes sub2api, prend en charge l'accès à Cherry Studio, New Api et d'autres logiciels · GitHub

basketikun/chatgpt2api : implémentation inversée du protocole pur de l'interface du site Web officiel ChatGPT, prend en charge le modèle GPT-Image-2, le modèle de texte, compatible avec le protocole d'interface OpenAI, génération/édition d'images par lots en ligne, gestion du pool de comptes, prend en charge l'inversion des fichiers PPT/PSD modifiables, prend en charge l'importation de CPA, le pool de comptes sub2api, prend en charge l'accès à Cherry Studio, New Api et d'autres logiciels · GitHub

ChatGPT2API effectue principalement de l'ingénierie inverse et encapsule les fonctionnalités pertinentes du site Web officiel de ChatGPT, fournit une API/agent d'image compatible OpenAI pour la génération d'images ChatGPT, l'édition d'images et les scénarios d'édition multi-images, et intègre le dessin en ligne, la gestion du pool de comptes, les méthodes d'importation de comptes multiples et les capacités de déploiement auto-hébergées de Docker.

Avertissement

Découpe Laser Bois Banner | R3V Laser

Clause de non-responsabilité:

Ce projet implique une recherche inversée sur la génération de texte, la génération et l'édition d'images du site officiel de ChatGPT et d'autres interfaces associées. C'est uniquement pour l'apprentissage personnel, la recherche technique et l'échange technique non commercial.

  • Toute utilisation commerciale, à but lucratif, opération par lots, abus automatisé ou appel à grande échelle de ce projet est strictement interdite.
  • Il est strictement interdit d'utiliser ce projet pour perturber l'ordre du marché, une concurrence malveillante, l'arbitrage et la revente, des services liés aux ventes secondaires et tout comportement qui viole les conditions de service d'OpenAI ou les lois et réglementations locales.
  • Il est strictement interdit d'utiliser ce projet pour générer, diffuser ou aider à la génération de contenus illégaux, violents, pornographiques, liés à des mineurs, ou à des fins illégales ou inappropriées telles que la fraude, l'escroquerie, le harcèlement, etc.
  • Les utilisateurs doivent supporter tous les risques, y compris, mais sans s'y limiter, les restrictions de compte, les interdictions temporaires ou permanentes et les responsabilités juridiques résultant d'une utilisation illégale.
  • En utilisant ce projet, vous êtes réputé avoir pleinement compris et accepté l'intégralité du contenu de cette clause de non-responsabilité ; toutes les conséquences causées par un abus, une violation ou une utilisation illégale seront à la charge de l'utilisateur.
  • Ce projet est basé sur une recherche inversée sur les capacités pertinentes du site officiel de ChatGPT. Il existe un risque de restrictions de compte, de bannissements temporaires ou permanents. N'utilisez pas vos propres comptes importants, vos comptes fréquemment utilisés ou vos comptes de grande valeur pour les tests.

Nuage Atlas

Atlas Cloud est une plate-forme d'inférence d'IA entièrement modale qui offre aux développeurs une API d'IA unique pour accéder à la génération de vidéos, à la génération d'images et aux API LLM. Au lieu de gérer les intégrations de plusieurs fournisseurs, vous vous connectez une seule fois et obtenez un accès unifié à plus de 300 modèles sélectionnés dans toutes les modalités. Découvrez la nouvelle promotion du plan de codage d'Atlas Cloud pour un accès API plus économique.

git clone git@github.com:basketikun/chatgpt2api.git
cd chatgpt2api
docker compose up -d

Avant de commencer, s'il vous plaît config.json Paramètres moyens auth-keyou dans docker-compose.yml passer CHATGPT2API_AUTH_KEY couverture.

  • Panneau Web :http://localhost:3000
  • Adresse API :http://localhost:3000/v1
  • Répertoire de données :./data

Déploiement de proxy stable WARP / FlareSolverr

Si les liens d'images sont souvent interceptés par Cloudflare, vous pouvez activer la solution WARP + Privoxy + FlareSolverr incluse :

cp .env.example .env
docker compose -f docker-compose.warp.yml up -d --build

La composition commencera :

  • warp-proxy: Fournir l'exportation WARP SOCKS5.
  • privoxy: Convertissez WARP SOCKS5 en proxy HTTP.
  • flaresolverr: Actualisez l'autorisation Cloudflare.
  • init-config: Écriture idempotente proxy_runtime Configuration par défaut.
  • app: Démarrez le service principal ChatGPT2API.

Par défaut, seules les requêtes OpenAI/ChatGPT en amont passent par le proxy stable, et les liens auxiliaires tels que l'e-mail du compte et le CPA ne seront pas repris de force. Le proxy configuré sur le compte lui-même a la priorité la plus élevée, suivi du temps d'exécution du proxy stable, puis du proxy explicite et de l'ancien proxy global.

Disponible à .env Ajustez les paramètres d'exécution du port et du proxy dans la page des paramètres. Vous pouvez également enregistrer manuellement, tester le proxy et tester l'autorisation dans le panneau « Stable Proxy Runtime » sur la page des paramètres d'arrière-plan.

Démarrez le back-end :

git clone git@github.com:basketikun/chatgpt2api.git
cd chatgpt2api
uv sync
uv run main.py

Démarrez le front-end :

cd chatgpt2api/web
bun install
bun run dev

La nouvelle version sera mise à jour ultérieurement :

docker pull ghcr.io/basketikun/chatgpt2api:latest
docker-compose down
docker-compose up -d

Prise en charge via des variables d'environnement STORAGE_BACKEND Changer de méthode de stockage :

  • json – Fichier JSON local (par défaut)
  • sqlite – Base de données SQLite locale
  • postgres – PostgreSQL externe (configuration requise DATABASE_URL
  • git – Entrepôt privé Git (configuration nécessaire) GIT_REPO_URL et GIT_TOKEN

Exemple : utilisation de PostgreSQL

environment:
  - STORAGE_BACKEND=postgres
  - DATABASE_URL=postgresql://user:password@host:5432/dbname
  • compatible POST /v1/images/generations Interface de génération d'images
  • compatible POST /v1/images/edits Interface d'édition d'images
  • Compatible avec les scénarios orientés image POST /v1/chat/completions
  • Compatible avec les scénarios orientés image POST /v1/responses
  • GET /v1/models retour gpt-image-2codex-gpt-image-2autogpt-5gpt-5-1gpt-5-2gpt-5-3gpt-5-3-mini
    gpt-5-mini
  • Accompagnement à travers n Renvoie plusieurs résultats générés
  • Prend en charge la génération de fichiers PPT modifiables
  • Prend en charge la génération de fichiers PSD modifiables
  • Prend en charge l'ingénierie inverse de l'interface de dessin dans le Codex, uniquement Plus / Team / Pro Des abonnements sont disponibles et l'alias du modèle est codex-gpt-image-2vous pouvez le mapper dans d'autres scènes si nécessaire
    gpt-image-2utilisé pour le distinguer du dessin du site officiel ; ce qui signifie que le même compte aura deux quotas de tirage pour le site officiel et le Codex.
  • Établi de dessin en ligne intégré, prend en charge la génération, l'édition d'images et l'édition de groupes multi-images
  • soutien gpt-image-2codex-gpt-image-2autogpt-5gpt-5-1gpt-5-2gpt-5-3gpt-5-3-minigpt-5-mini Sélection du modèle
  • Le mode édition prend en charge le téléchargement d'images de référence
  • Le frontal prend en charge la génération et l'interaction multi-images
  • Enregistrez localement l'historique des sessions d'images, prenez en charge la révision, la suppression et l'effacement
  • Prise en charge de la mise en cache côté serveur des URL d'images
  • Suivi de la progression de la génération d'images, vous pouvez continuer à attendre après l'expiration du délai
  • Le chargement paresseux des images et la mémoire de position de défilement optimisent les performances d'un grand nombre de scènes d'images
  • Actualisez automatiquement l'e-mail du compte, le type, le quota et le temps de récupération (suivi des progrès asynchrone)
  • Sonder les comptes disponibles pour effectuer la génération et l'édition d'images
  • Supprimer automatiquement les jetons invalides lorsque vous rencontrez des erreurs d'invalidation de jeton
  • Vérifiez régulièrement le compte de limite actuel et actualisez-le automatiquement
  • Prend en charge la reconnexion par mot de passe pour récupérer les comptes anormaux et peut se reconnecter automatiquement après l'actualisation
  • Prend en charge la configuration globale du proxy HTTP/HTTPS/SOCKS5/SOCKS5H sur la page Web
  • Prise en charge du runtime d'agent stable WARP/FlareSolverr
  • Prend en charge la recherche, le filtrage, l'actualisation par lots, l'exportation, l'édition manuelle et le nettoyage de compte
  • Quatre méthodes d'importation sont prises en charge : importation de fichiers JSON CPA local, importation de serveur CPA distant,sub2api importation de serveur,access_token importer
  • Configuration du support sur la page des paramètres sub2api Serveur, filtre et importe les comptes OpenAI OAuth par lots

Toutes les interfaces IA nécessitent des en-têtes de requête :

GET /v1/models

Renvoie la liste des modèles d'image actuellement exposés.

curl http://localhost:8000/v1/models \
  -H "Authorization: Bearer "
illustrer

Champ illustrer
Modèle de retour gpt-image-2codex-gpt-image-2autogpt-5gpt-5-1gpt-5-2gpt-5-3gpt-5-3-minigpt-5-mini
Scénario d'accès Peut être connecté à des clients en amont tels que Cherry Studio et New API



POST /v1/images/generations

Interface de génération d'images compatible OpenAI pour les diagrammes vincentiens.

curl http://localhost:8000/v1/images/generations \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer " \
  -d '{
    "model": "gpt-image-2",
    "prompt": "一只漂浮在太空里的猫",
    "n": 1,
    "response_format": "b64_json"
  }'
Description du champ

Champ illustrer
model Modèle d'image, les valeurs actuellement disponibles commencent par /v1/models Le résultat renvoyé prévaudra. Il est recommandé d'utiliser gpt-image-2
prompt Mots d'invite de génération d'images
n Nombre de builds, la limite actuelle du backend est 1-4
response_format Ce champ est inclus dans le modèle de demande actuel et la valeur par défaut est b64_json



POST /v1/images/edits

OpenAI est compatible avec l'interface d'édition d'images, qui peut télécharger des fichiers image ou transmettre des liens d'images au format JSON officiel et générer des résultats d'édition.

curl http://localhost:8000/v1/images/edits \
  -H "Authorization: Bearer " \
  -F "model=gpt-image-2" \
  -F "prompt=把这张图改成赛博朋克夜景风格" \
  -F "n=1" \
  -F "image=@./input.png"

Vous pouvez également télécharger directement l'URL de l'image :

curl http://localhost:8000/v1/images/edits \
  -H "Authorization: Bearer " \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-image-2",
    "prompt": "把这张图改成赛博朋克夜景风格",
    "images": [
      {"image_url": "https://example.com/input.png"}
    ]
  }'
Description du champ

Champ illustrer
model modèle d'image, gpt-image-2
prompt Conseils pour l'édition d'images
n Nombre de builds, la limite actuelle du backend est 1-4
image Les fichiers image qui doivent être modifiés sont téléchargés à l'aide de multipart/form-data
images Tableau de référence d'image JSON, pris en charge {"image_url": "https://..."}
image_url Vous pouvez également télécharger directement des liens d'images en mode formulaire et prendre en charge les champs répétés pour télécharger plusieurs images.



POST /v1/chat/completions

Interface compatible avec Chat Completions pour les scénarios de texte, de recherche sur le Web et d'images, et non comme agent de chat universel complet.

curl http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer " \
  -d '{
    "model": "gpt-image-2",
    "messages": [
      {
        "role": "user",
        "content": "生成一张雨夜东京街头的赛博朋克猫"
      }
    ],
    "n": 1
  }'
Description du champ

Champ illustrer
model Modèles de texte, de recherche ou d’image ; les modèles de recherche déclenchent une logique de compatibilité de recherche sur le Web
messages Tableau de messages, prenant en charge le contenu des demandes de texte, de recherche et d'image
n Le nombre d'images générées, analysé en nombre d'images selon l'implémentation actuelle
stream Les scènes de texte, de recherche et d'image sont toutes prises en charge et toujours en cours de test
tools Prise en charge des scènes de texte web_search / web_search_preview / web_search_preview_2025_03_11
web_search_options La logique de compatibilité de la recherche Web sera déclenchée une fois transmise



POST /v1/responses

L'interface compatible avec l'API Responses pour les appels d'outils de recherche de texte, de recherche sur le Web et de génération d'images, et non un proxy API Responses universel complet.

curl http://localhost:8000/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer " \
  -d '{
    "model": "gpt-5",
    "input": "生成一张未来感城市天际线图片",
    "tools": [
      {
        "type": "image_generation"
      }
    ]
  }'
Description du champ

Champ illustrer
model Le champ modèle sera repris dans la réponse, et la recherche et la génération d'images suivront la logique compatible correspondante.
input Entrez le contenu ; la recherche utilise le texte du dernier utilisateur et la génération d'images doit être capable d'analyser les mots d'invite
tools soutien image_generationweb_searchweb_search_previewweb_search_preview_2025_03_11
stream Mis en œuvre mais toujours en test



Pour apprendre l'IA, rendez-vous sur le site L : LinuxDO

Merci à tous les développeurs qui ont contribué à ce projet :

Contributeurs

Graphique de l'historique des étoiles

Source link

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Panier
Retour en haut
découpe laser pub