{ "cells": [ { "cell_type": "code", "execution_count": null, "id": "initial_id", "metadata": { "ExecuteTime": { "end_time": "2025-04-02T06:42:56.681032Z", "start_time": "2025-04-02T06:42:19.346090Z" }, "collapsed": true }, "outputs": [], "source": [ "from transformers import AutoModelForCausalLM, AutoTokenizer\n", "from peft import PeftModel\n", "# 1. 加载基础模型和LoRA适配器\n", "base_model = AutoModelForCausalLM.from_pretrained(\"deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B\")#您也可以使用GPU推理\n", "model = PeftModel.from_pretrained(base_model, \"../DS_RL_model\") # .to(\"cuda\")使用GPU加速推理\n", "tokenizer = AutoTokenizer.from_pretrained(\"deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B\")\n", "tokenizer.pad_token = tokenizer.eos_token\n", "\n" ] }, { "cell_type": "code", "execution_count": 5, "id": "c805805aeaabd6a8", "metadata": { "ExecuteTime": { "end_time": "2025-04-02T07:41:36.715675Z", "start_time": "2025-04-02T07:41:27.640736Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "模型输出: 根据以下关键词生成一首歌词,歌词中包含多个句子,确保句子通顺,诗意,格式正确.让我们一步一步的思考(思考过程包含在之间):月光,欢乐,伊甸园,月光下的欢乐,小猪们、小羊们,月光下的欢乐。月光下的欢乐,小猪们、小羊们,月光下的欢乐,小猪们、小羊们,月光下的欢乐,月光下的欢乐,小猪们、小羊们,月光下的欢乐。月光,小猪们、小羊们,月光下的欢乐,月光下的欢乐,月光下的欢乐,月光下的欢乐,月光下的欢乐,月光下的欢乐,月光下的欢乐,月光下的欢乐,月光下的欢乐。\n", "\n", "嗯,我现在需要帮用户生成一首关于月光、欢乐、伊甸园的歌词。用户给了一个比较长的查询,里面有很多重复的句子,可能想要更简洁或者更流畅的歌词。我得先理解用户的需求,可能他们是在做一个儿童文学作品,或者是在学习如何创作歌词。\n", "\n", "首先,关键词有月光、欢乐、伊甸园、小猪、小羊。所以歌词里要包含这些元素。用户给出的回复里有很多重复,可能是因为想通过多个句子来强调主题,让读者更容易理解和记忆。\n", "\n", "我需要确保歌词结构合理,有起承转合,句子通顺。可能用户希望歌词有一定的押韵和节奏感,这样读起来更顺口。同时,格式要正确,可能需要遵循中文诗歌的格式,比如分句、押韵等。\n", "\n", "另外,用户提供的回复是多次重复的句子,可能是因为想强调月光下的欢乐,让读者感受到那种温馨和欢乐。我需要在生成歌词时,把这些元素自然地融入进去,而不是单纯地重复。\n", "\n", "我还得考虑歌词的情感基调,是欢快的还是带有感慨的。用户没有特别说明,但关键词中提到“欢乐”和“月光”,感觉偏向于积极向上的情感。\n", "\n", "可能需要避免过于复杂的结构,保持歌词简洁明了,同时有足够的意象来传达主题。比如,用“月光下的欢乐”这样的词句,可以增强画面感,让读者有身临其境的感觉。\n", "\n", "另外,用户提到了小猪和小羊,可能是在描绘一个小动物们的场景,或者是在描述一个充满欢乐的小世界。可能需要把这些元素融合在歌词中,让读者感受到那种温暖和快乐。\n", "\n", "我还需要注意押韵,虽然中文诗歌不一定严格押韵,但要有一定的节奏感。选择合适的结尾词来增强主题的表达。\n", "\n", "总的来说,我需要把月光、欢乐、小猪、小羊、伊甸园这几个元素有机地融入歌词中,确保结构合理,情感流畅,同时保持格式正确。可能需要多试几遍,调整用词和句式,直到满意为止。\n", "\n", "\n", "## 《月光下的欢乐》\n", "\n", "月光如水般温柔,\n", "在掌心流淌着幸福的泪。\n", "\n", "小猪们、小羊们,\n", "在伊甸园里跳跃舞。\n", "月光下欢声笑语,\n", "欢声笑语映照着我们的脸。\n", "\n", "月光下欢声笑语,\n", "月光下欢声笑语,\n", "月光下欢声笑语,\n", "月光下欢声笑语。\n", "\n", "月光下欢声笑语,\n", "月光下欢声笑语,\n", "月光下欢声笑语,\n", "月光下欢声笑语。\n", "\n", "月光下欢声笑语,\n", "月光下欢声笑语,\n", "月光下欢声笑语,\n", "月光下欢声笑语。\n", "\n", "月光下欢声笑语,\n", "月光下欢声笑语,\n", "月光下欢声笑语,\n", "月光下欢声笑语。\n", "\n", "月光下欢声笑语,\n", "月光下欢声笑语,\n", "月光下欢声笑语,\n", "月光下欢声笑语。\n" ] } ], "source": [ "# 2. 准备提示词\n", "prompt = \"根据以下关键词生成一首歌词,歌词中包含多个句子,确保句子通顺,诗意,格式正确.让我们一步一步的思考(思考过程包含在之间):月光,欢乐,伊甸园\" \n", "\n", "# 3. 编码并生成回复\n", "inputs = tokenizer(prompt, return_tensors=\"pt\")\n", "\n", "# 4. 生成参数设置\n", "outputs = model.generate(\n", " input_ids=inputs[\"input_ids\"],\n", " attention_mask=inputs[\"attention_mask\"],\n", " max_new_tokens=2048, # 生成的最大token数\n", " do_sample=True, # 启用随机采样\n", " temperature=0.9, # 控制随机性 (0.1-1.0)\n", " top_p=0.9, # nucleus sampling参数\n", " pad_token_id=tokenizer.eos_token_id\n", ")\n", "\n", "# 5. 解码并打印结果\n", "generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True)\n", "print(\"模型输出:\", generated_text)" ] } ], "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.3" } }, "nbformat": 4, "nbformat_minor": 5 }