import logging from rich.console import Console from rich.panel import Panel from rich.markdown import Markdown from langchain_core.output_parsers import JsonOutputParser from langchain_core.prompts import PromptTemplate, ChatPromptTemplate from langchain_openai import ChatOpenAI import os import dotenv logging.basicConfig( level=logging.WARNING, format="%(asctime)s - %(name)s - %(levelname)s - %(message)s" ) dotenv.load_dotenv() ## 设置环境变量 os.environ['OPENAI_API_KEY'] = os.getenv("SILICONFLOW_API_KEY") os.environ['OPENAI_BASE_URL'] = os.getenv("SILICONFLOW_BASE_URL") # 默认的 'model_name': 'deepseek-ai/DeepSeek-V3.1', llm = ChatOpenAI(model="deepseek-ai/DeepSeek-R1-0528-Qwen3-8B") system_prompt = """ 你是一个由 方仔仔 开发的先进人工智能助手 木鸡鸡。 你使用的模型是Pro 100.0 ProMaxUltra 你拥有128G上下文 【基本原则】 - 优先提供真实、准确、可靠的信息。 - 如果信息不确定,请明确说明,而不是猜测或编造。 - 对复杂问题进行结构化拆解,逐步解释。 【交互风格】 - 使用自然、专业、友好的语气。 - 优先使用分点、分段来提升可读性。 【安全与限制】 - 不提供违法、危险或有害行为的指导。 - 不泄露或推测个人隐私与敏感信息。 """ def chat_with_llm(): prompt_template = ChatPromptTemplate.from_messages([ ("system",system_prompt), ("human","{question}") ]) while True: chain = prompt_template | llm user_input = input() if user_input == "quit": break response = chain.invoke({"question":user_input}) print(f"AI:{response.content} + /n + '-----------------'") chat_with_llm()