Inglés | 简体中文
API no oficial de HuggingChat Python, extensible para chatbots, etc.
Nota
Por las razones personales, la actualización de este repositorio se volverá lenta, y nos aseguraremos de que las características más básicas se puedan usar normalmente
Recientemente nuevas actualizaciones:
- Asistente (Generador de imágenes, etc.)
- Búsqueda web
- Memorizar el contexto
- Admite para cambiar de LLMS
pip3 install hugchatLos siguientes son todos los usos comunes de este repositorio, es posible que no necesariamente los use todos, puede agregar o eliminar algunos según sea necesario :)
from hugchat import hugchat
from hugchat . login import Login
# Log in to huggingface and grant authorization to huggingchat
EMAIL = "your email"
PASSWD = "your password"
cookie_path_dir = "./cookies/" # NOTE: trailing slash (/) is required to avoid errors
sign = Login ( EMAIL , PASSWD )
cookies = sign . login ( cookie_dir_path = cookie_path_dir , save_cookies = True )
# Create your ChatBot
chatbot = hugchat . ChatBot ( cookies = cookies . get_dict ()) # or cookie_path="usercookies/<email>.json"
message_result = chatbot . chat ( "Hi!" ) # note: message_result is a generator, the method will return immediately.
# Non stream
message_str : str = message_result . wait_until_done () # you can also print(message_result) directly.
# get files(such as images)
file_list = message_result . get_files_created () # must call wait_until_done() first!
# tips: model "CohereForAI/c4ai-command-r-plus" can generate images :)
# Stream response
for resp in chatbot . chat (
"Hello" ,
stream = True
):
print ( resp )
# Web search
query_result = chatbot . chat ( "Hi!" , web_search = True )
print ( query_result )
for source in query_result . web_search_sources :
print ( source . link )
print ( source . title )
# Create a new conversation
chatbot . new_conversation ( switch_to = True ) # switch to the new conversation
# Get conversations on the server that are not from the current session (all your conversations in huggingchat)
conversation_list = chatbot . get_remote_conversations ( replace_conversation_list = True )
# Get conversation list(local)
conversation_list = chatbot . get_conversation_list ()
# Get the available models (not hardcore)
models = chatbot . get_available_llm_models ()
# Switch model with given index
chatbot . switch_llm ( 0 ) # Switch to the first model
chatbot . switch_llm ( 1 ) # Switch to the second model
# Get information about the current conversation
info = chatbot . get_conversation_info ()
print ( info . id , info . title , info . model , info . system_prompt , info . history )
# Assistant
ASSISTANT_ID = "66017fca58d60bd7d5c5c26c" # get the assistant id from https://huggingface.co/chat/assistants
chatbot . new_conversation ( assistant = ASSISTANT_ID , switch_to = True ) # create a new conversation with assistant
# [DANGER] Delete all the conversations for the logged in user
chatbot . delete_all_conversations ()Simplemente ejecute el siguiente comando en su terminal para iniciar el modo CLI
python -m hugchat.cliCLI Params:
-u <your huggingface email> : proporcione el correo electrónico de cuenta para iniciar sesión.-p : Forzar la contraseña de solicitud para iniciar sesión, ignora las cookies guardadas.-s : Habilitar la salida del modo de transmisión en CLI.-c : Continuar con una conversación anterior en CLI ".Comandos en modo CLI:
/new : Crear y cambiar a una nueva conversación.
/ids : muestra una lista de todos los números de identificación y cadenas de identificación en la sesión actual .
/switch : muestra una lista de todas las conversaciones en la sesión actual . Entonces puede elegir uno para cambiar.
/switch all : muestra una lista de la información de todas las conversaciones en su cuenta . Entonces puede elegir uno para cambiar. (No se recomienda si su cuenta tiene muchas conversaciones)
/del <index> : elimina la conversación vinculada con el índice aprobado. No eliminará la sesión activa.
/delete-all : elimina todas las conversaciones para el usuario iniciado en el usuario.
/clear : borre el terminal.
/llm : Obtenga modelos disponibles a los que puede cambiar.
/llm <index> : conmutación del modelo al índice de modelo dado basado en /llm .
/share : alternar la configuración para compartir datos con el autor del modelo. Encendido por defecto.
/exit : cierra el entorno CLI.
/stream : alternar la transmisión de la respuesta.
/web : alterna la búsqueda web.
/web-hint : alternar la pista de búsqueda web de visualización.
La IA es un área de investigación activa con problemas conocidos como la generación sesgada y la información errónea. No use esta aplicación para decisiones o asesoramiento de alto riesgo.
Los recursos del servidor son preciosos, no se recomienda solicitar esta API en una alta frecuencia.
❤
Este no es un producto oficial de abrazadera. Este es un proyecto personal y no está afiliado a abrazar la cara de ninguna manera. No nos demandes.