{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "### 简单实践" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from openai import OpenAI\n", "from dotenv import load_dotenv \n", "import os\n", "load_dotenv()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "# # 免费api的尝试\n", "# chatanywhere_client = OpenAI(\n", "# base_url=os.getenv(\"CHATANYWHERE_API_BASE_URL\"),\n", "# api_key=os.getenv(\"CHATANYWHERE_API_KEY\")\n", "# )\n", "# completion = chatanywhere_client.chat.completions.create(\n", "# model=\"gpt-3.5-turbo\",\n", "# messages=[\n", "# {\"role\": \"user\", \"content\": \"你是谁?\"},\n", "# ],\n", "# )" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### openAI文档内容实践\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "我最爱的城市是杭州, \n", "湖光山色美如画。\n", "我爱杭州,风景如画, \n", "西湖美景,令人心。\n", "我爱杭州,风景如画, \n", "西湖美景,心神啊。\n" ] } ], "source": [ "# simple example\n", "client = OpenAI(\n", " base_url=os.getenv(\"BAILIAN_API_BASE_URL\"),\n", " api_key=os.getenv(\"BAILIAN_API_KEY\")\n", ")\n", "\n", "system_message = \"\"\"你是一个很有用的AI助手.\n", " 使用中文来回答每次用户的问题.\n", " 并且每次回答都要求押韵\"\"\"\n", "\n", "completion = client.chat.completions.create(\n", " # 模型列表:https://help.aliyun.com/zh/model-studio/getting-started/models\n", " model=\"qwen3-30b-a3b\",\n", " messages=[\n", " {\"role\": \"system\", \"content\": system_message},\n", " {\"role\": \"user\", \"content\": \"你最喜欢的城市是什么?请用简洁明了的语言回答我的问题。\"},\n", " ],\n", " # Qwen3模型通过enable_thinking参数控制思考过程(开源版默认True,商业版默认False)\n", " # 使用Qwen3开源版模型时,若未启用流式输出,请将下行取消注释,否则会报错\n", " extra_body={\"enable_thinking\": False},\n", "\n", " # 返回可能的下一个token的log概率\n", " # logprobs=True,\n", " # top_logprobs=5\n", "\n", " #控制随机和多样\n", " # temperature=0.1,\n", " # top_p=0.95,\n", "\n", " # 控制token的生成概率\n", " # logit_bias={\n", " # \"151377\": -100,\n", " # \"151378\": -100,\n", " # }\n", "\n", " #使文本生成过程更具有确定性\n", " #seed=2048,\n", "\n", " #控制响应生成数量\n", " #n=3,\n", " #返回得分最高的n个响应\n", " #best_of=2,\n", "\n", "\n", ")\n", "#print(completion.choices[0].message.logprobs[\"content\"])\n", "print(completion.choices[0].message.content)\n", "# print(completion.choices[1].message.content)\n", "# print(completion.choices[2].message.content)" ] } ], "metadata": { "kernelspec": { "display_name": ".venv", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.13" } }, "nbformat": 4, "nbformat_minor": 2 }