GithubHelp home page GithubHelp logo

eideehi / sd-webui-better-prompt Goto Github PK

View Code? Open in Web Editor NEW
161.0 161.0 9.0 2.87 MB

Stable Diffusion web UI extension that provides a better UI for prompt editing.

License: MIT License

JavaScript 53.02% Shell 0.02% TypeScript 22.11% CSS 2.00% Python 1.98% Svelte 20.78% HTML 0.09%

sd-webui-better-prompt's People

Contributors

eideehi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

sd-webui-better-prompt's Issues

ERROR: Exception in ASGI application

Hey,
Since I updated automatic1111 I receive an error message in the console. I disabled all other plugins.

ERROR: Exception in ASGI application
Traceback (most recent call last):
File "J:\diffusion\venv\lib\site-packages\uvicorn\protocols\http\h11_impl.py", line 429, in run_asgi
result = await app( # type: ignore[func-returns-value]
File "J:\diffusion\venv\lib\site-packages\uvicorn\middleware\proxy_headers.py", line 78, in call
return await self.app(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\fastapi\applications.py", line 273, in call
await super().call(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\starlette\applications.py", line 122, in call
await self.middleware_stack(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\starlette\middleware\errors.py", line 184, in call
raise exc
File "J:\diffusion\venv\lib\site-packages\starlette\middleware\errors.py", line 162, in call
await self.app(scope, receive, _send)
File "J:\diffusion\venv\lib\site-packages\starlette\middleware\cors.py", line 84, in call
await self.app(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\starlette\middleware\gzip.py", line 24, in call
await responder(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\starlette\middleware\gzip.py", line 44, in call
await self.app(scope, receive, self.send_with_gzip)
File "J:\diffusion\venv\lib\site-packages\starlette\middleware\exceptions.py", line 79, in call
raise exc
File "J:\diffusion\venv\lib\site-packages\starlette\middleware\exceptions.py", line 68, in call
await self.app(scope, receive, sender)
File "J:\diffusion\venv\lib\site-packages\fastapi\middleware\asyncexitstack.py", line 21, in call
raise e
File "J:\diffusion\venv\lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in call
await self.app(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\starlette\routing.py", line 718, in call
await route.handle(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\starlette\routing.py", line 276, in handle
await self.app(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\starlette\routing.py", line 66, in app
response = await func(request)
File "J:\diffusion\venv\lib\site-packages\fastapi\routing.py", line 237, in app
raw_response = await run_endpoint_function(
File "J:\diffusion\venv\lib\site-packages\fastapi\routing.py", line 163, in run_endpoint_function
return await dependant.call(**values)
File "J:\diffusion\extensions\sd-webui-better-prompt\scripts\better_prompt.py", line 137, in get_extra_networks
{"name": item["name"], "preview": item["preview"], "search_term": item["search_term"]})
KeyError: 'search_term'
ERROR: Exception in ASGI application
Traceback (most recent call last):
File "J:\diffusion\venv\lib\site-packages\uvicorn\protocols\http\h11_impl.py", line 429, in run_asgi
result = await app( # type: ignore[func-returns-value]
File "J:\diffusion\venv\lib\site-packages\uvicorn\middleware\proxy_headers.py", line 78, in call
return await self.app(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\fastapi\applications.py", line 273, in call
await super().call(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\starlette\applications.py", line 122, in call
await self.middleware_stack(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\starlette\middleware\errors.py", line 184, in call
raise exc
File "J:\diffusion\venv\lib\site-packages\starlette\middleware\errors.py", line 162, in call
await self.app(scope, receive, _send)
File "J:\diffusion\venv\lib\site-packages\starlette\middleware\cors.py", line 84, in call
await self.app(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\starlette\middleware\gzip.py", line 24, in call
await responder(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\starlette\middleware\gzip.py", line 44, in call
await self.app(scope, receive, self.send_with_gzip)
File "J:\diffusion\venv\lib\site-packages\starlette\middleware\exceptions.py", line 79, in call
raise exc
File "J:\diffusion\venv\lib\site-packages\starlette\middleware\exceptions.py", line 68, in call
await self.app(scope, receive, sender)
File "J:\diffusion\venv\lib\site-packages\fastapi\middleware\asyncexitstack.py", line 21, in call
raise e
File "J:\diffusion\venv\lib\site-packages\fastapi\middleware\asyncexitstack.py", line 18, in call
await self.app(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\starlette\routing.py", line 718, in call
await route.handle(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\starlette\routing.py", line 276, in handle
await self.app(scope, receive, send)
File "J:\diffusion\venv\lib\site-packages\starlette\routing.py", line 66, in app
response = await func(request)
File "J:\diffusion\venv\lib\site-packages\fastapi\routing.py", line 237, in app
raw_response = await run_endpoint_function(
File "J:\diffusion\venv\lib\site-packages\fastapi\routing.py", line 163, in run_endpoint_function
return await dependant.call(**values)
File "J:\diffusion\extensions\sd-webui-better-prompt\scripts\better_prompt.py", line 144, in get_extra_networks
{"name": item["name"], "preview": item["preview"], "search_term": item["search_term"]})
KeyError: 'search_term'

Doesn't show

image

Tried changing between the 3 versions in the settings and restarted webui each time, but nothing worked.

Sometimes the notification for the latest version becoming available does not appear.

Version

0.1.0

Detail

Even if have enabled the notification for the latest version in the settings, there are cases where the notification may not appear when the latest version becomes available.

Workaround

Please manually check for updates from Extensions > Installed > [Check for updates]. This bug does not occur in version 0.2.0 or later.

Wishlist

  1. Drag and drop can be enabled between prompts and negative prompts.
  2. Allow users to choose whether to allow completely replacing the original Input Field.
  3. Customize the color of prompts / negative prompts / Lora.
  4. Automatically highlight duplicate prompts.
  5. Customize the number of search prompt results returned.
  6. Sort the search results by popularity.

This is truly a great extension.

Laggy

Hey, I am getting quite a lot of lag on the lattest gradio. I dont actually have experience with previous versions of ewbui, but in this one, after i type some prompts, it takes a while to update the buttons underneath. Each letter comes in at 1/5 speed. Very slow. Very unusable. I need to do some testing to see if another extension is conflicting, but this is happening before any generating even happens

Dynamic Promot Wildcards integration

Feel like this might be a super enhancement for better prompts to have direct access to the prompt dynamic prompt folder of txt wildcards in order to directly insert the wildcart.txt into the prompt right from better prompt... this would be godsend

Unable to parse emoticons

Currently, Better Prompt is unable to parse emoticons such as :) or <3 in the prompts. I'm working on resolving this issue.

Unable to detect git.exe on Windows system.

Sorry for my English.

Even though the git.exe environment is already in place on the Windows system, it still cannot be used properly.

GIF 2023-04-21 20-43-16

Error loading script: better_prompt.py
Traceback (most recent call last):
  File "D:\Software\Python3.10\userfolder\stable-diffusion-webui-master\modules\scripts.py", line 256, in load_scripts
    script_module = script_loading.load_module(scriptfile.path)
  File "D:\Software\Python3.10\userfolder\stable-diffusion-webui-master\modules\script_loading.py", line 11, in load_module
    module_spec.loader.exec_module(module)
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "D:\Software\Python3.10\userfolder\stable-diffusion-webui-master\extensions\sd-webui-better-prompt\scripts\better_prompt.py", line 240, in <module>
    initialize()
  File "D:\Software\Python3.10\userfolder\stable-diffusion-webui-master\extensions\sd-webui-better-prompt\scripts\better_prompt.py", line 235, in initialize
    print_version()
  File "D:\Software\Python3.10\userfolder\stable-diffusion-webui-master\extensions\sd-webui-better-prompt\scripts\better_prompt.py", line 105, in print_version
    result = subprocess.check_output([GIT, "log", '--pretty=v%(describe:tags)', "-n", "1"], cwd = EXTENSION_ROOT, shell = True).decode("utf-8")
  File "D:\Software\Python3.10\python-3.10.9.amd64\lib\subprocess.py", line 421, in check_output
    return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
  File "D:\Software\Python3.10\python-3.10.9.amd64\lib\subprocess.py", line 526, in run
    raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['D:\\Software\\git\\bin\\git.exe', 'log', '--pretty=v%(describe:tags)', '-n', '1']' returned non-zero exit status 128.

Please let me know if there is any additional information that needs to be provided. ๐Ÿ’–

Thank you.

The error occurs when changing the "Version of Better Prompt"

Version

0.1.0

Detail

When selecting a version from the dropdown and clicking 'Apply settings', an error occurs and the version is not changed.

Workaround

Please update from Extensions > Installed > [Check for updates]. This bug does not occur in version 0.2.0 or later.

Feature Request and Feedback

  1. I really like both this and better styles, I wanted to get it worked out so that at least better-styles could be integrated into Vladmandic's fork, SD.Next as a built-in replacement for the existing (crappy legacy) styles system currently used, and one is being looked for, but unfortunately, you have a lot of things going on in your extensions that shouldn't be there, all the git stuff is a big no-no since extensions can be updated via a simple install.py (or through the extension manager), and your extension probably shouldn't try to handle its own localization either, he had to put in a little code fix just to deal with that, so it was rejected.

If that's something you would be interested in, feel free to come to his discord server, as vlado is always happy to work with other developers on SD. There is a big UI overhaul coming in the near future, and your styles extension does just about everything I think someone could ask for, whereas there are multiple competing prompt extensions with similar functionality and there's probably no chance one of them would be added in.

  1. The network search box on the right has a tendency to delete the contents of the prompt when things are already in the prompt and an item is clicked on. Had it happen a few times, but no idea why.

  2. When something in the network search area is clicked on, it's added to the prompt, if it is clicked on again, it should be removed from the prompt. The current behavior just repeatedly adds it again and again, when that is obviously not what anyone is going to want.

  3. I really love the networks search box system on the right side, it's a very quick and efficient method of accessing the extra networks without having to use the browser. I would love to have that as a separate extension or control over the prompts being visible at least. If it's possible, could you separate them code-wise? At least so I can get a copy of it if nobody else wanted it that way, I simply can't make heads or tails of the massive amount of javascript involved. That may potentially be something that could also be integrated, though I have not brought it up, the space used and functionality provided is a great balance.

Thanks for your consideration, and keep up the good work!

text2img in png info

After using text2img in png info, the Input Field of Better Prompt will not synchronize update prompts.

Lora: not all my lora's are showing

Hey, Not all my lora's show. Is there a setting or something that determines whether the lora gets recognised and sent to the suggestion area? I can clearly see some lora's that actually are seen in the lora module of webui are not showing on suggestion. Have a feeling it has something to do with the instance prompt. Is it a problem if the instance prompt is contained in the lora filename? Not sure. Would be nice to resolve this issue/non-issue thansks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.