import os import json from datetime import datetime import gradio as gr from openai import OpenAI def print_now(msg): now = datetime.now() formatted_time = now.strftime("%Y-%m-%d %H:%M:%S.%f") print(f"{msg}:{formatted_time}") return formatted_time def respond( message, history: list[tuple[str, str]], system_message, max_tokens, temperature, top_p, ): try: default_system ="You are Tencent's helpful AI assistant Hunyuan." messages = [{"Role": "system", "Content": default_system}] client = OpenAI( api_key=os.getenv('HUNYUAN_API_KEY'), base_url="https://api.hunyuan.cloud.tencent.com/v1", ) for val in history: if val[0] and val[1]: messages.append({"Role": "user", "Content": val[0]}) messages.append({"Role": "assistant", "Content": val[1]}) messages.append({"Role": "user", "Content": message}) completion = client.chat.completions.create( model="hunyuan-turbo", messages=messages, stream=True, extra_body={ "stream_moderation": True, "enable_enhancement": False, } ) response = "" for event in completion: print(222222222222) print(event) print(type(event)) print(event.choices[0]) print(event.choices[0].delta) print(222222222222) token = event.choices[0]['Delta']['Content'] if message.find('写一篇关于青春的五言绝句') != -1: print(11111111111) print(token) response += token yield response except Exception as e: raise gr.Error(f"发生错误: {str(e)}") example_prompts = [ ["How to cook Kung Pao chicken the tastiest?"], ["Help me create an email expressing my greetings to an old friend."], ["写一篇关于青春的五言绝句"], ["一枚反面朝上的硬币,被翻转了15下后,它的上面是正面,这个说法正确吗?"] ] latex_delimiters = [ {"left": "$$", "right": "$$", "display": True}, {"left": "\\[", "right": "\\]", "display": True},{"left": "$", "right": "$", "display": False}, {"left": "\\(", "right": "\\)", "display": False} ] chatbot = gr.Chatbot(latex_delimiters=latex_delimiters, scale=9) demo = gr.ChatInterface(respond, title="Hunyuan T1", examples=example_prompts, chatbot=chatbot ) if __name__ == "__main__": demo.queue(default_concurrency_limit=40) demo.launch(max_threads=40)