una aplicación de bot que se ejecuta en Tencent QQ y que integra capacidades de chatbot GPT con pintura de IA.
Una aplicación de robot que se ejecuta en Tencent QQ y que integra capacidades de chat gpt con pintura ai.
Debido a la energía personal limitada, actualmente este proyecto está dirigido principalmente a usuarios chinos. Si tengo tiempo en el futuro, puedo agregar más soporte de internacionalización. Para los usuarios de inglés, no debería ser difícil de entender con la ayuda de nombres de variables. También puede traducir este archivo Léame al inglés para ayudarle a comprender este proyecto. La idea principal es utilizar indicaciones para guiar la inserción de texto de identificación para que el programa reconozca y ejecute instrucciones similares. como servicios de voz, gestión de grupos y análisis de imágenes de usuarios (ha sido implementado por visual-chatgpt). Si este proyecto puede inspirarlo o ayudarlo, sería un honor.
Hay un proyecto derivado modificado en base a este proyecto y que agrega capacidades de análisis de imagen y voz de vits: https://github.com/AGuanDao/mix-chatgpt-and-ai-painting-and-vits
Inicie la API desde cualquier proyecto en selfhostedAI (solo probé RWKV-Runner, recomendado)
Luego, en config.py, configure use_selfhostedllm en True. En este momento, use #gpt para cambiar al modo GPT3 original y se llamará al modelo local.
show all ...
en la parte inferior. Windows generalmente usa windows_amd64.exe. Desde que go-cqhttp anunció que detendrá el mantenimiento, ahora puede usar https://github.com/LLOneBot. /LLOneBot como alternativa, habilítelo en la configuración. Simplemente conéctese al Websocket directo y el resto del contenido permanecerá como de costumbre.models/Stable-diffusion
de stable-diffusion-webui.python webui.py --medvram --deepdanbooru --xformers --api --enable-insecure-extension-access
, tenga en cuenta que se debe incluir el parámetro --api
, si está utilizando el paquete de integración de otra persona, Es posible que deba agregar manualmente el parámetro --api
al script de inicio. Consulte常见问题
anterior.git clone https://github.com/josStorer/mix-chatgpt-and-ai-painting
e instala las dependencias pip install -r requirements.txt
api_key
/ email,password
, master_id
, bot_id
. Se recomienda que las variables modificadas teniendo en cuenta la situación real sean: use_chatgpt
, working_groups
. auth_vip_for_all
, local_mode
, otros por favor Tome su propia decisiónpython main.py
win+tab
para crear un nuevo escritorio para hacer otras cosas, de modo que su computadora pueda ser utilizada por grupo cuando esté inactivo. Juguemos con amigos.AttributeError: 'Error' object has no attribute 'message'
"proxy": "你的代理地址"
después de la contraseña de correo electrónico en main.py#L119. no tiene un proxy, configure use_chatgpt
en False
y complete api_key
.错误: 'images'
o错误: 404: {"detail":"Not Found"}
--api
adicionalmente al iniciar. Si está utilizando el paquete de integración de otra persona, busque el archivo de inicio correspondiente (generalmente con un sufijo .bat) y busque la línea con. parámetros en él, como --deepdanbooru
, --xformers
, agregue --api
al final, preste atención al espacio entre los parámetros, si hay un iniciador, busque y verifique opciones como启用API
/暴露API
错误: [WinError 3] The system cannot find the path specified
HOME
en una determinada ruta de carpeta para almacenar información de configuración.git pull
para obtener actualizaciones de este proyecto y asegúrese de utilizar pip install -r requirements.txt --upgrade
para actualizar las bibliotecas dependientes.device.json
en el mismo directorio, abra y busque protocol
, cambie el valor a 2
y reinicie el programa para iniciar sesión.main.py
, busque run_forever
y elimine reconnect=3
entre paréntesismain.py
para configurar el proxy: proxy = { 'http' : "http://127.0.0.1:端口号" , 'https' : "http://127.0.0.1:端口号" }
openai . proxy = proxy
Si tienes algún problema de uso, puedes unirte al grupo QQ 283430436 para comunicarte o probarlo.
@机器人1号#上线
, lo cual es adecuado para situaciones en las que hay varios robots en el grupo y el uso directo del comando de sirena afectará a todos los robots. .instrucción | Ejemplo | ilustrar |
---|---|---|
#gpttoggle | #gpttoggle | Cambiar entre los modos gpt3 y chatgpt |
#en línea | #en línea | Ponga el robot de chat grupal en línea para permitirle realizar llamadas openai y pintura ai |
#desconectado | #desconectado | Desconecte el robot de chat grupal para que no se le permita realizar llamadas openai ni sorteos ai |
#dibujar | #dibujar图512x512.girl | Deje que el robot haga dibujos en el chat grupal, por ejemplo: #画图girl , use puntos o punto y coma para separar, permita algunas operaciones de acceso directo, use llaves para permitir operaciones de configuración json detalladas, use #帮助 para ver los detalles |
#d | #d 512x512.chica | Operaciones de dibujo rápidas que los usuarios en la lista vip pueden usar, el efecto es el mismo que #画图 |
#retirar | #retirar | Deshacer el último mensaje de bot activado por usted |
#黑黑 | #黑黑123456 | Prohibir a este usuario usar bots en este chat grupal |
#despido | #levantamiento123456 | Desbloquear a este usuario |
#personaje | #vip 123456 | Agregue el usuario a la lista vip. Los usuarios en la lista vip pueden usar el comando #d o llamar al robot para ejecutar la conversación de la API de Openai. |
#novip | #unvip 123456 | Eliminar este usuario de la lista vip |
#conversación limpia | #conversación limpia | Limpiar el contexto de la conversación (cuando el contenido de la conversación anterior fue demasiado largo y provocó que la solicitud fallara, puede optar por limpiarlo) |
#ayuda | #ayuda | Mostrar información de ayuda para usuarios normales del grupo, excluidas las instrucciones vip y las instrucciones maestras. |
#por defecto | #por defecto | Muestra la configuración json predeterminada de #画图 . Puede copiar directamente esta información y modificarla usted mismo, y luego devolverla para llamar a través de #画图{...} |
#lista negra | #lista negra | Mostrar lista negra |
#en el interruptor | #en el interruptor | Cambie el modo de respuesta del robot De forma predeterminada, el robot at siempre es necesario para la respuesta abierta. Después de cambiar, puede tener una conversación directa y responder a cada oración. |
#modelo | #modelocualquier cosa-v4 | Ingrese directamente #model para ver la lista de modelos actualmente activos y todos los modelos disponibles. Ingrese el #model 模型名 para cambiar de modelo. No es necesario que el nombre del modelo esté completo, solo debe existir en el nombre del modelo de destino. distingue entre mayúsculas y minúsculas, por ejemplo, un modelo completo llamado anything-v4.0-pruned.safetensors , puede ingresar directamente #model v4 para cambiar. |
#vae | #vae Cualquier cosa-V3.0.vae.pt | Ingrese directamente #vae para ver el VAE utilizado actualmente. Ingrese #vae VAE名称 para cambiar el VAE. Tenga en cuenta que, a diferencia del cambio de modelo, el cambio de VAE debe coincidir completamente con el nombre del archivo. |
#balance | #balance | Mostrar el saldo de la clave API utilizada actualmente |
Modifique la función on_message en main.py y ws_wrapper.py para intentar desarrollar aplicaciones de robot para otros programas además de QQ.
Al principio, este proyecto era solo un juguete para amigos de esculturas de arena. Recientemente, cuando estaba trabajando en un modelo de la vida real, integré la función de diálogo gpt. , así que lo hice de código abierto.
La idea central se puede entender mirando el mensaje de config.py. También se pueden usar ideas similares para generar conversaciones de voz, administrar chats grupales, etc. Esto es solo para inspirar a otros.
El código y los registros de git son muy largos, porque fue solo un proyecto de juguete desde el principio y se construyó directamente con un transbordador. Además, los registros también contienen información privada, como mi propio nombre de dominio y mi clave, por lo que los creé directamente. un nuevo proyecto sin ningún registro.