CivArchive
    Preview 1670174
    Preview 1670171
    Preview 1670175
    Preview 1670170
    Preview 1670169

    Promptvision

    Brand new rewrite. Now using CustomTkinter for native GUI via python.

    • Primarily useful for viewing generations (generated images) either in realtime as they are created or when you are cataloguing them (supports auto detect of new images in the folder you're viewing)

    • Shows metadata from forge / automatic1111 natively (I am using forge)

      • This means it will support other platforms that use the same way to store metadata

    • Has navigation shortcuts

      • D and A for moving next/previous images

      • F for marking an image as favorite

        • The viewer will store a favorites.json in each folder you open with the viewer so that you can have different favorites depending on what you're browsing.

    • Settings are stored in the same place as where you open the program

      • viewer_settings.json Contains information about your last opened directory, last position (you can resume browsing in the same folder if you close it), export directory (where you want to save favorites to) and auto update toggle (if you want to detect new images in the folder)

    • Gallery view of all images in the folder

      • You can press on an image to view that in the image viewer

    Note that when opening gallery view it will take a little while to load in most use cases. I've tried quite a few methods to improve the performance, but it is what it is. If you have auto update images on it might flicker a bit, especially if you're viewing the last gallery page which is being updated with new generations as you're viewing. Turn off auto update setting to reduce flickering.

    VirusTotal analysis of the program: https://www.virustotal.com/gui/file/617b644d673c84c1ccdc9c2287804102eba0e03b4ec9ca94f646b2175bbf62ff/detection

    There are 3 false positives. It seems that it's not completely possible to generate executables from python without these if not using a certificate.

    Build command:
    pyinstaller --name=Promptvision --windowed --onefile --add-data="assets/*:assets" --add-data="views/*:views" --hidden-import=PIL._tkinter_finder promptvision.py --clean --icon=assets/pvlogo.png

    Description

    • Complete rewrite of application from using Flask and custom CSS/JS/HTML to using Streamlit.

    • Quicker

    • Good filtering

    • Prompt analysis that enables insight into key themes

    FAQ

    Comments (12)

    AlyndiarAug 21, 2023
    CivitAI

    When trying to run this, I get the following:
    2023-08-21 18:37:42.286 Uncaught app exception

    Traceback (most recent call last):

    File "D:\anaconda3\lib\site-packages\streamlit\runtime\scriptrunner\script_runner.py", line 552, in runscript

    exec(code, module.__dict__)

    File "W:\seait\Promptvision\Promptvision.py", line 3, in <module>

    import pvision

    File "W:\seait\Promptvision\pvision.py", line 4, in <module>

    from sdparsers import ParserManager

    ModuleNotFoundError: No module named 'sdparsers'

    Any help you could provide?

    Automaticism
    Author
    Aug 22, 2023

    Did you run pip install -r requirements.txt ?
    That should install sd-parsers which is required to run this

    LostAtSeaSep 20, 2023
    CivitAI

    for some reason its not able to view images that are more than 200mbs which feels very limiting since most people tend to upscale

    Automaticism
    Author
    Sep 24, 2023· 1 reaction

    Could you copy paste what the log said when you tried to view a 200 mb image? (I've never upscaled to 200mb so far, mine tend to be 20-30 mb) And what kind of resolution is an image of that size? Then I could try to recreate it on my end.

    AlyilaNov 29, 2023

    @Automaticism Got 1360 image 180mb for all. Works fine when i select a folder that only have 360 images and 112mb for all.

    MessageSizeErrorData of size 253.6 MB exceeds the message size limit of 200.0 MB.

    This is often caused by a large chart or dataframe. Please decrease the amount of data sent to the browser, or increase the limit by setting the config option server.maxMessageSize. Click here to learn more about config options.

    Note that increasing the limit may lead to long loading times and large memory consumption of the client's browser and the Streamlit server.

    LostAtSeaDec 3, 2023

    @Automaticism Yeh what he posted. I switched so something else called breadboard, but the message @Alyila posted is exactly what I remember seeing

    Automaticism
    Author
    Dec 3, 2023

    You can adjust the --server.maxMessageSize 2048 on launch. Set e.g. 4096.

    streamlit run .\promptvision.py --server.maxMessageSize 2048

    That should probably help with the issue. Adjust this as high as needed.

    OtakuFraOct 9, 2023
    CivitAI

    Looks pretty good, the native system is a bit...well not very handi, but i'm sorry, i'm pretty new in all this, where am i supposed to install this and how ? I'm not familiar with python at all...i'm a disgrace ^^'

    Thx anyway for this tool

    Automaticism
    Author
    Oct 13, 2023· 1 reaction

    # Promptvision README

    ## Installation

    If you do not have Miniconda installed, please install it following these steps:

    1. Visit the Miniconda website: [Miniconda](https://docs.conda.io/en/latest/miniconda.html)

    2. Download the appropriate Miniconda3 installer for your system (e.g., Windows, macOS, Linux).

    3. Install Miniconda by following the installation instructions on the website.

    4. To verify the installation, open a new terminal and run:

    ```

    conda --version

    ```

    Ensure it works correctly before proceeding with the Promptvision setup.

    ## Setting up Promptvision

    Follow these steps to set up and run Promptvision:

    1. Clone the Promptvision repository:

    ```

    git clone https://github.com/Automaticism/Promptvision.git

    ```

    2. Navigate to the Promptvision directory:

    ```

    cd Promptvision

    ```

    3. Create a Conda environment named "promptvision":

    ```

    conda create -n promptvision

    ```

    4. Activate the "promptvision" environment:

    ```

    conda activate promptvision

    ```

    5. Install required Python packages using pip:

    ```

    pip install -r requirements.txt

    ```

    6. Run the Promptvision app with Streamlit:

    ```

    streamlit run Promptvision.py

    ```

    7. Optional: If using "Calculate ImageReward score," it will download the score. Console message example:

    ```

    2023-07-22 00:56:36.538 Created a temporary directory...

    Downloading ImageReward.pt: 1%|▌ | 21.0M/1.79G [00:02<02:49, 10.4MB/s]

    ```

    Enjoy using Promptvision!

    OtakuFraOct 16, 2023

    @Automaticism Thank you very much, if i may ask, how creating a user.bat ?

    Talk2GiuseppeNov 23, 2023
    CivitAI

    Just finished installing and encountered the "AttributeError: st.session_state has no attribute "df" error. I followed the link and quickly became overwhelmed with the... ummm... explanation? fix? For the average user, it doesn't really offer a solution on how to overcome the problem. Any suggestions? This project looks very promising and it would be great to have an opportunity to get it working.

    Running on Linux Mint 21.2, Streamlit v1.28.2

    Automaticism
    Author
    Nov 24, 2023

    Did you get it from github?

    Try getting the latest version(s) from git: https://github.com/Automaticism/Promptvision.git

    Just pushed a large update (first in months).

    Tested on a directory with almost 15000 images and lots of subfolders.

    Other
    Other

    Details

    Downloads
    599
    Platform
    CivitAI
    Platform Status
    Available
    Created
    7/22/2023
    Updated
    5/12/2026
    Deleted
    -

    Files

    promptvisionViewAllYour_v10.zip

    Mirrors