Tool that shuffles and picks x amount of prompts from input prompt file(s)

详情

模型描述

更新日期:21.3

  • 新增对多个输入文件的支持

  • 默认样本范围扩展至10,000

一款用于从包含提示词的文件中随机选取指定数量提示词的工具。我在测试上传的不同提示词包时会使用它。我会选取足够大的样本量来生成几张图像,剔除并修正明显错误的提示词,然后循环重复此过程。

要求

  • pip install gradio

使用方法

  • gradio guitoolkit.py

  • 或使用 python guitoolkit.py

使用指南

  1. 下载此文件 / 将下方代码复制到一个名为 guitoolkit.py 的文件中(或你想要的任意名称)

  2. 创建或使用虚拟环境 python -m venv venv

  3. 激活环境 venv\Scripts\activate

  4. 运行命令 pip install gradio,安装运行本工具所需的 gradio 库

  5. 安装完成后,运行 gradio guitoolkit.pypython guitoolkit.py

  6. 若你看到以下信息,则说明工具已准备就绪:gradio .\guitoolkit.py
    正在重新加载模式下启动: http://127.0.0.1:7861 (按 CTRL+C 退出)

  7. 现在你可以访问 http://127.0.0.1:7861,工具已准备就绪

  8. 输入你想打乱的文件,选择需要的数量,复制输出内容,粘贴到例如 Automatic1111 中

源代码

import gradio as gr
import random

def shuffle_file(file_obj, no_prompts):
    prompts = []
    for file in file_obj:
        with open(file.name) as infile:
            in_prompts = infile.readlines()
        prompts.extend(list(set(in_prompts)))

    prompts = random.sample(prompts, no_prompts)
    random.shuffle(prompts)
    print(type(prompts))
    return "".join(prompts)

demo = gr.Interface(
    fn=shuffle_file,
    inputs=["files",  gr.Slider(5, 10000)],
    outputs=["code"],
)

if __name__ == "__main__":
    demo.launch(server_port=9800)

此模型生成的图像

未找到图像。