大模型初体验
创建环境
安装环境
bash
conda activate ai-demo1
conda install -c conda-forge uv -y
uv --version
uv pip install anthropic创建配置文件
- model.txt
bash
{
"env": {
"ANTHROPIC_BASE_URL": "你自己的 API 地址",
"ANTHROPIC_AUTH_TOKEN": "你自己的 API 密钥",
"ANTHROPIC_MODEL": "你自己的模型",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "你自己的模型",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "你自己的模型",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "你自己的模型"
},
"includeCoAuthoredBy": false
}main.py
- 基础版本
py
import json
from pathlib import Path
from anthropic import Anthropic
config_path = Path(__file__).with_name("model.txt")
config = json.loads(config_path.read_text(encoding="utf-8"))["env"]
client = Anthropic(
api_key=config["ANTHROPIC_AUTH_TOKEN"],
base_url=config["ANTHROPIC_BASE_URL"],
)
def main():
messages = []
print("开始对话,输入 exit 或 quit 退出。")
while True:
try:
question = input("\n你:").strip()
except (EOFError, KeyboardInterrupt):
print("\n已退出。")
break
if not question:
continue
if question.lower() in {"exit", "quit"}:
break
messages.append({"role": "user", "content": question})
response = client.messages.create(
model=config["ANTHROPIC_MODEL"],
max_tokens=512,
messages=messages,
)
answer = "\n".join(
block.text for block in response.content if block.type == "text"
)
print(f"\nAI:{answer}")
messages.append({"role": "assistant", "content": answer})
if __name__ == "__main__":
main()运行程序
bash
python main.py