本项目旨在为用户生成高质量的Stable Diffusion提示词。用户输入自然语言描述,通过大模型转换为适合Stable Diffusion的提示词,并使用XTuner对模型进行微调,以提升生成效果。主要功能包括:
- 自然语言到提示词转换:利用书生大模型将用户输入的自然语言转换为Stable Diffusion的提示词。
- 模型微调:使用XTuner工具对模型进行QLoRA或全量参数微调,提升生成效果。
首先 下载推理所用的模型 https://huggingface.co/Rnglg2/internLM2-SD_PROMPT 将模型文件夹重命名为internlm2-xxxxxx
#安装LMDepoly
pip install lmdeploy
#安装其他依赖
pip install streamlit openai requests
CUDA_VISIBLE_DEVICES=0 lmdeploy serve api_server ($model-path) --server-port 23333 --api-keys internlm2
streamlit run chat_ui.py
你需要部署一个Stable diffusion Webui 否则将无法使用生图功能
pip install transformers huggingface_hub streamlit torch
- 将脚本中
model_name_or_path
修改为下载完成的模型路径 - 运行以下命令启动应用
streamlit run streamlit.py
- 打开浏览器,进入
localhost:8501
即可开始对话[1]
Citations: [1] https://huggingface.co/Rnglg2/internLM2-SD_PROMPT
- 用户输入自然语言描述。
- 系统生成提示词。
- 使用书生大模型将自然语言转换为Stable Diffusion提示词。
- 使用XTuner工具进行QLoRA或全量参数微调,让模型学习更多的提示词示例,以便更好地生成提示词。
- 生成图片:将生成的提示词结合Stable Diffusion WebUI API,实现自然语言直接生成符合要求的图片。
- 个性化优化建议:根据用户的使用习惯和历史数据,提供个性化的提示词优化建议。