Gebruikershulpmiddelen

Site-hulpmiddelen


steamlit_home

Streamlit

πŸ—‚οΈ Terug naar start

πŸ–₯️ Python GUI's overzicht ✨ Overzicht van gebruikers interfaces

πŸ’‘ Meer Steamlit Algemene basis
πŸ“š Multipage Meerdere pagina's in Streamlit app
πŸ“ Meerdere kolommen

Streamlit Assistent GPT

Een beginnershandleiding voor Streamlit

Your Streamlit Apps Don’t Have to Suck: LayOut aanpassen

πŸ˜‰ Emoji's in Streamlit GUI

⚠️ NOTE: problemen gehad bij het online zetten van een app op streamlit en Heroku omgeving omdat β€œpywin32” in het β€œrequirements.txt” bestand stond. Oplossing:
πŸ”Έ Verwijder β€œpywin32” uit requirements.txt
πŸ”Έ Delete β€œpywin32” uit lokale omgeving als deze niet nodig isβ€œ:

pip uninstall pywin32

Installeren

pip install streamlit

Bij problemen met gewoon installeren de onderstaande methode gebruiken

python -m pip install streamlit

Versie controleren

streamlit --version

Upgrade streamlit

pip install --upgrade streamlit

Of

python.exe -m pip install --upgrade streamlit

Streamlit Verwijderen uit Python project

pip uninstall streamlit

Een Streamlit App Starten

streamlit run app.py

Gekleurde tekst in/met Streamlit

st.write(f":blue[tool invoked]: {tool_name} ")
st.write(":green[Please approve the tool picked up by the agent - select either 'yes' or 'no' ]")

JavaScript in Streamlit

Streamlit App template

πŸƒ Een template voor een Python app die gebruik maakt van Streamlit voor de GUI waarin de content dynamisch wordt geladen. Met dynamisch menu in het zijpaneel

GitHub A3D: streamlitetemplate


Meldingen uit zetten

Meldingen van Sreamlit uitzetten door dat aan te geven in de config.toml: folderWatchBlacklist = [β€œpycache”]

[server]
port = 8501
headless = true
folderWatchBlacklist = ["__pycache__"]

[theme]
primaryColor = "#FF0000"
backgroundColor = "#f4fbfc"
secondaryBackgroundColor = "#dcf1e7"
textColor = "#455a8c"
font = "sans serif"

Asyncio

nest_asyncio voor versies < 1.18

Asyncio gebruiken in Streamlit werkt weer net even anders omdat streamlit zelf al een loop gebruikt. Het is dus zaak om gebruik te maken van die Streamlit loop om foutmeldingen te voorkomen. Dit kun je doen door gebruik te maken van nest-asyncio

pip install nest_asyncio

Dan in het script waarin je asynchroon wil gebruiken:

import nest_asyncio

nest_asyncio.apply() # To prevent asyncio runtime error in Streamlit

Note: niet in een class maar gewoon rechtstreeks in het Python bestand

Vervolgens (als voorbeeld in een Class):

def run(self, user_input):
        loop = asyncio.new_event_loop()
        asyncio.set_event_loop(loop)
        return asyncio.run(self.run_async(user_input))
       
async def run_async(self, user_input):
        result_1, result_2 = await asyncio.gather(
            self.get_documents_async(user_input, zoek_vector, filter),
            self.get_documents_async(user_input, hypo_vector, filter)
        )
        ...

Voor gewone code of:

def run(self, user_input):
        loop = asyncio.new_event_loop()
        asyncio.set_event_loop(loop)
        return asyncio.run(self.run_async(user_input))
       
async def run_async(self, user_input):
        agent = self.maakTriageAgent()
        result = Runner.run_sync(agent, user_input)
        return result.final_output

In een OpenIAgent SDK aanroep


Foutmelding Safari

Kreeg de volgende foutmelding in Safari browser:

Titel.  SyntaxError: Invalid regular expression: invalid group specifier name
transformGfmAutolinkLiterals@https://catqaagent-9ac0b943c64b.herokuapp.com/static/js/index.C1NIn1Y2.js:357:250649
ye@https://catqaagent-9ac0b943c64b.herokuapp.com/static/js/index.C1NIn1Y2.js:76:4653
Markdown$2@https://catqaagent-9ac0b943c64b.herokuapp.com/static/js/index.C1NIn1Y2.js:86:15014
$0@https://catqaagent-9ac0b943c64b.herokuapp.com/static/js/index.C1NIn1Y2.js:46:18838

Oplossing:
Pas je requirements.txt-bestand aan en specificeer de versie:

streamlit==1.31.0

Deploy je applicatie opnieuw naar Heroku nadat je deze wijziging hebt doorgevoerd.
⚠️ LET OP: Houd rekening met andere afhankelijke versies van andere bibliotheken.


steamlit_home.txt Β· Laatst gewijzigd: door a3dijke