Le projet Chatgpt-on-wechat (COW) est un grand robot de dialogue intelligent basé sur des modèles qui prend en charge les comptes officiels de WeChat, les applications de WECHAT en entreprise, Feishu et Dingtalk. Linkai / chatglm / kimi / wenxin yiyan / iflytek / tongyi qianwen / linkai peut traiter le texte, la voix et les images, accéder aux ressources externes telles que le système d'exploitation et Internet via des plug-ins, et prennent en charge une AI d'entreprise personnalisée en fonction de son propre base de connaissance . application.
La dernière version prend en charge les fonctions comme suit:
Vidéo de démonstration: https://cdn.link-ai.tech/doc/cow_demo.mp4
Ajoutez un petit assistant à WeChat pour rejoindre le groupe d'échange de projet open source:
Linkai est une plate-forme d'application AI à guichet unique pour les entreprises et les développeurs, agrégant les grands modèles multimodaux, les bases de connaissances, les plug-ins d'agent, les workflows et autres capacités, prenant en charge l'accès en un clic aux plates-formes traditionnelles et leur gestion, en soutenant le SaaS et un déploiement privatisé. Plusieurs modes.
Linkai a accumulé de riches solutions d'IA dans les opérations de domaine privé, le service client intelligent, l'assistant d'efficacité de l'entreprise et d'autres scénarios, et a accumulé les meilleures pratiques pour une application à grande échelle dans diverses industries telles que le commerce électronique, la culture et l'éducation, la santé, la nouvelle consommation et la fabrication de technologies.
SERVICES ENTREPRISE et conseil en produits Contactez un consultant en produit:
2024.10.31: Amélioration de la stabilité du programme dans la version 1.7.3, fonctions de base de données, optimisation du modèle Claude, optimisation du plug-in Linkai, notifications hors ligne
2024.09.26: version 1.7.2 et version 1.7.1, Iflytek et autres modèles Optimisation, modèles O1, scripts d'installation rapide et de gestion
2024.08.02: modèle Iflytek 4.0, affichage de la source de citation de la base de connaissances et optimisation du plug-in associée dans la version 1.7.0
2024.07.19: Version 1.6.9 Ajoute le modèle GPT-4O-MINI, la reconnaissance vocale d'Alibaba et l'optimisation du routage des canaux d'application Qiwei
2024.07.05: version 1.6.8 et version 1.6.7, Claude3.5, Gemini 1.5 Pro, modèle minimax, entrée d'image de workflow, amélioration de la liste des modèles
2024.06.04: versions 1.6.6 et 1.6.5, modèle GPT-4O, cartes de streaming Dingtalk, reconnaissance / synthèse vocale iflytek
2024.04.26: Version 1.6.0, ajoutant Kimi Access, GPT-4-Turbo Version Medgrake, Fichier Résumé et Problème de reconnaissance vocale
2024.03.26: version 1.5.8 et version 1.5.7, nouveaux modèles GLM-4 et Claude-3, support vocal Edge-TTS
2024.01.26: version 1.5.6 et version 1.5.5, accès Dingtalk, mise à niveau du plug-in outil, mise à jour du modèle à 4 turbo
2023.11.11: version 1.5.3 et version 1.5.4, ajoutant le modèle Tongyi Qianwen et Google Gemini
2023.11.10: version 1.5.2, ajoutant de la chaîne Feishu, dialogue de reconnaissance d'image et configuration de liste noire
2023.11.10: Version 1.5.0, New
gpt-4-turbo,dall-e-3, l'accès au modèlettsest ajouté et les capacités multimodales de la compréhension et de la génération d'images, la reconnaissance et la génération de la parole sont améliorées
2023.10.16: prend en charge les plug-ins tels que la recherche de réseau Linkai, le calcul mathématique, l'accès Web via l'identification de l'intention, reportez-vous au document de plug-in
2023.09.26: Le plug-in ajoute des fonctions de résumé et de dialogue des liens de fichier / d'article.
2023.08.08: Accès au modèle Baidu Wenxin Yiyan et support le dessin médian à travers le plug-in
2023.06.12: Connectez-vous à la plate-forme Linkai, vous pouvez créer une base de connaissances de domaine en ligne et créer un robot de service client exclusif. Utilisez le document d'accès de référence.
Afficher les journaux de mise à jour précédents: les journaux des archives
Démarrer rapidement la documentation détaillée: documentation de construction de projet
Script d'installation rapide, instructions détaillées pour l'utilisation: script de démarrage d'installation en un clic
bash <( curl -sS https://cdn.link-ai.tech/code/cow/install.sh )Le projet utilise l'interface OpenAI par défaut. dans le projet plus tard. L'interface nécessite l'accès au réseau à l'étranger et le paiement de la carte de crédit.
Le modèle de dialogue par défaut est le GPT-3.5-turbo d'OpenAI, qui consomme 0,002 $ par 1000 jetons (environ 750 mots anglais ou 500 caractères chinois, y compris les demandes et les réponses).
Le projet prend également en charge l'utilisation de l'interface Linkai et ne nécessite pas d'agent. , workflow et autres capacités. Modifiez la configuration et utilisez-la en un seul clic, reportez-vous au document d'accès.
Prend en charge les systèmes Linux, MacOS et Windows (peut fonctionner sur des serveurs Linux pendant longtemps), et Python doit être installé.
Il est recommandé que la version Python soit entre 3.7.1 et 3.9.x, et la version 3.8 est recommandée.
Remarque: Docker ou le déploiement des chemins de fer ne nécessite pas l'installation de l'environnement Python et le téléchargement du code source, et vous pouvez transmettre directement vers la section suivante.
(1) Clonage du code du projet:
git clone https://github.com/zhayujie/chatgpt-on-wechat
cd chatgpt-on-wechat/Remarque: Si vous rencontrez des problèmes de réseau, vous pouvez choisir le miroir domestique https://gitee.com/zhayujie/chatgpt-on-wechat
(2) Installer les dépendances de base (requises):
Capacité à créer des robots à l'aide
itchatet avoir l'ensemble minimum de dépendances requise pour les capacités de communication de texte.
pip3 install -r requirements.txt(3) Développer les dépendances (installation facultative et recommandée):
pip3 install -r requirements-optional.txtSi une installation de dépendance échoue, commentez la ligne correspondante avant de continuer
Le modèle du fichier de configuration est config.json le répertoire racine config-template.json .
cp config-template.json config.json Remplissez ensuite la configuration dans config.json .
# config.json文件内容示例
{
" model " : " gpt-3.5-turbo " , # 模型名称, 支持 gpt-3.5-turbo, gpt-4, gpt-4-turbo, wenxin, xunfei, glm-4, claude-3-haiku, moonshot
" open_ai_api_key " : " YOUR API KEY " , # 如果使用openAI模型则填入上面创建的 OpenAI API KEY
" open_ai_api_base " : " https://api.openai.com/v1 " , # OpenAI接口代理地址
" proxy " : " " , # 代理客户端的ip和端口,国内环境开启代理的需要填写该项,如 "127.0.0.1:7890"
" single_chat_prefix " : [ " bot " , " @bot " ], # 私聊时文本需要包含该前缀才能触发机器人回复
" single_chat_reply_prefix " : " [bot] " , # 私聊时自动回复的前缀,用于区分真人
" group_chat_prefix " : [ " @bot " ], # 群聊时包含该前缀则会触发机器人回复
" group_name_white_list " : [ " ChatGPT测试群" , " ChatGPT测试群2 " ], # 开启自动回复的群名称列表
" group_chat_in_one_session " : [ " ChatGPT测试群" ], # 支持会话上下文共享的群名称
" image_create_prefix " : [ "画" , "看" , "找" ], # 开启图片回复的前缀
" conversation_max_tokens " : 1000, # 支持上下文记忆的最多字符数
" speech_recognition " : false, # 是否开启语音识别
" group_speech_recognition " : false, # 是否开启群组语音识别
" voice_reply_voice " : false, # 是否使用语音回复语音
" character_desc " : "你是基于大语言模型的AI智能助手,旨在回答并解决人们的任何问题,并且可以使用多种语言与人交流。 " , # 人格描述
# 订阅消息,公众号和企业微信channel中请填写,当被订阅时会自动回复,可使用特殊占位符。目前支持的占位符有{trigger_prefix},在程序中它会自动替换成bot的触发词。
" subscribe_msg " : "感谢您的关注!n这里是ChatGPT,可以自由对话。n支持语音对话。n支持图片输出,画字开头的消息将按要求创作图片。n支持角色扮演和文字冒险等丰富插件。n输入{trigger_prefix}#help 查看详细指令。 " ,
" use_linkai " : false, # 是否使用LinkAI接口,默认关闭,开启后可国内访问,使用知识库和MJ
" linkai_api_key " : " " , # LinkAI Api Key
" linkai_app_code " : " " # LinkAI 应用或工作流code
}Instructions de configuration:
1. Chat personnel
single_chat_prefix (si vous n'avez pas besoin du déclencheur de préfixe, vous pouvez remplir "single_chat_prefix": [""] )"single_chat_reply_prefix": "" de la réponse du robot sera single_chat_reply_prefix avec "[bot]" pour distinguer les personnes réelles.2. Chat de groupe
group_name_white_list pour activer les réponses de chat de groupe automatique. Si vous souhaitez prendre effet sur tous les chats de groupe, vous pouvez remplir directement "group_name_white_list": ["ALL_GROUP"]group_chat_prefixgroup_name_keyword_white_list prend en charge les noms de groupe Fuzzy Fuzzy, tandis que l'élément de configuration group_chat_keyword prend en charge le contenu du message de groupe correspondant et l'utilisation est la même que les deux éléments de configuration ci-dessus. (Contribué par eVolay)group_chat_in_one_session : Faire des chats de groupe partager un contexte de session, et la configuration ["ALL_GROUP"] sera utilisée pour tous les chats de groupe3. Reconnaissance vocale
"speech_recognition": true permettra la reconnaissance vocale. Il répondra automatiquement à toutes les voix."group_speech_recognition": true Activer la reconnaissance de la parole de groupe. dessin);"voice_reply_voice": true permettra à la voix de réponse vocale (chat privé et chat de groupe)4. Autres configurations
model : Le nom du modèle prend actuellement en charge gpt-3.5-turbo , gpt-4o-mini , gpt-4o , gpt-4 , wenxin , claude , gemini , glm-4 , xunfei , moonshot , etc., se référer à Common / Const pour tous les noms de modèle.temperature , frequency_penalty , presence_penalty : paramètres d'interface API de chat, veuillez vous référer à la documentation officielle OpenAI pour plus de détails.proxy : Étant donné que l'interface openai est actuellement inaccessible en Chine, vous devez configurer l'adresse du client proxy.image_create_prefixconfig.py .conversation_max_tokens : représente le nombre maximal de mots dans le contexte qui peut être rappelé (une question et une réponse est un groupe de conversations. Si le nombre accumulé de mots dans la conversation dépasse la limite, le premier groupe de conversations sera supprimé en premier)rate_limit_chatgpt , rate_limit_dalle : le taux de questions et réponses maximum par minute, le taux de dessin, la file d'attente et le processus dans l'ordre après la vitesse.clear_memory_commands : commandes en dialogue, effacer activement la mémoire précédente et personnaliser l'alias de commande pour les tableaux de chaîne.hot_reload : Une fois le programme quitte, le stockage temporaire est égal à l'état et est fermé par défaut.character_desc enregistre un passage que vous avez dit au robot, il se souviendra de ce passage et servira de paramètre, et vous pouvez personnaliser n'importe quelle personnalité pour lui (voir ce problème pour plus d'informations sur le contexte de la conversation)subscribe_msg : veuillez remplir le message d'abonnement, le compte officiel et le canal WeChat Enterprise. Les espaces réservés actuellement pris en charge sont {Trigger_prefix}, qui seront automatiquement remplacés par le mot de déclenchement du bot dans le programme.5. Configuration de linkai (facultatif)
use_linkai : Que ce soit pour utiliser l'interface Linkai, il est accessible en Chine après l'ouvrir, utiliser la base de connaissances et la peinture Midjourney , des documents de référencelinkai_api_key : clé de l'API Linkai, peut être créée dans la consolelinkai_app_code : application linkai ou code de flux de travail, facultatif Ce document peut ne pas être mis à jour dans le temps, et tous les éléments de configuration actuellement facultatifs sont répertoriés dans cette config.py .
Si la machine de développement s'exécute localement , exécutez-la directement dans le répertoire racine du projet:
python3 app.py # windows环境下该命令通常为 python app.pyUne fois que le terminal a sorti le code QR, scannez le code pour vous connecter. Authentification au lieu de paiement). Après avoir scanné le code pour se connecter, votre compte devient un robot.
Utilisez la commande noHup pour exécuter le programme en arrière-plan:
nohup python3 app.py & tail -f nohup.out # 在后台运行程序并通过日志输出二维码Après ctrl+c scanné le code pour se connecter, le programme peut s'exécuter dans l'arrière-plan du serveur. Utilisez kill commande ps -ef | grep app.py | grep -v grep Une fois le journal fermé, si vous souhaitez ouvrir à nouveau, entrez simplement tail -f nohup.out . De plus, il existe scripts pour une exécution en un clic et la fermeture du programme à utiliser dans le répertoire des scripts.
Prise en charge à plusieurs comptes: Copiez plusieurs copies du projet, démarrez le programme séparément et utilisez différents comptes pour scanner le code pour se connecter pour réaliser un fonctionnement simultané.
Commande spéciale: l'utilisateur envoie #Reset au robot pour effacer la mémoire de contexte de l'utilisateur.
L'utilisation de Docker pour déploier ne nécessite pas de téléchargement de codes source et de dépendances d'installation, vous n'avez qu'à obtenir le fichier de configuration docker-compose.yml et démarrer le conteneur.
La prémisse est que
dockerdocker -vDockerdocker-compose versiondocker-composedoivent être installés. télécharger.
(1) Télécharger le fichier docker-compose.yml
wget https://open-1317903499.cos.ap-guangzhou.myqcloud.com/docker-compose.yml Une fois le téléchargement terminé, ouvrez docker-compose.yml pour modifier la configuration requise, telle que OPEN_AI_API_KEY et GROUP_NAME_WHITE_LIST , etc.
(2) Démarrer le conteneur
Exécutez la commande suivante dans le répertoire où docker-compose.yml est situé pour démarrer le conteneur:
sudo docker compose up -d L'exécution sudo docker ps peut afficher les conteneurs avec des noms ChatGPT-on-wechat, ce qui signifie exécuter avec succès.
Avis:
docker-compose est 1.x version, vous devez exécuter sudo docker-compose up -d pour démarrer le conteneurEnfin, exécutez la commande suivante pour afficher le journal d'exécution du conteneur, scannez le code QR dans le journal pour terminer le journal:
sudo docker logs -f chatgpt-on-wechat(3) Utilisation du plug-in
Si vous devez modifier la configuration du plug-in dans le conteneur Docker, vous config.json le compléter chatgpt-on-wechat docker-compose.yml montant. Dans docker-compose.yml ajoutez volumes de cartographie sous chatgpt-on-wechat :
volumes:
- ./config.json:/app/plugins/config.json
Le chemin de fer offre des quotas gratuits de 5 $ par mois et jusqu'à 500 heures. (Mise à jour 07.11: La plupart des comptes ne sont plus disponibles gratuitement)
Deploy Now .open_ai_api_key , character_desc .Déploiement en un clic:
FAQS: https://github.com/zhayujie/chatgpt-on-wechat/wiki/faqs
Ou consulter directement l'assistant de projet en ligne (le corpus est en permanence amélioré, et la réponse est pour référence uniquement)
Bienvenue pour accéder à plus d'applications, reportez-vous au code du terminal pour implémenter la logique de la réception et de l'envoi de messages à l'accès. Dans le même temps, les nouveaux plug-ins sont les bienvenus pour être ajoutés, reportez-vous aux instructions du plug-in.
Bienvenue à soumettre des relations publiques, des problèmes et des star pour le soutien. Si vous rencontrez des problèmes lorsque le programme s'exécute, vous pouvez afficher la liste des FAQ, puis consulter les problèmes à rechercher. Les développeurs individuels peuvent rejoindre le groupe d'échange open source pour participer à plus de discussions, et les utilisateurs des entreprises peuvent contacter des consultants en produits pour consultation.