Skip to main content

A FastAPI application serving ws bom/robot/llm platform ai.

Project description

🤖 ws-bom-robot-app

A FastAPI application serving ws bom/robot/llm platform ai

🌵 Minimal app structure

app/
|-- .env
|-- main.py

Fill main.py with the following code:

from ws_bom_robot_app import main
app = main.app

FIll .env with the following code:

#robot_env=local/development/production
robot_env=local
robot_user='[user]'
robot_password='[pwd]'
robot_data_folder='./.data'
robot_cms_auth='[auth]'
robot_cms_host='https://[DOMAIN]'
robot_cms_db_folder=llmVectorDb
robot_cms_files_folder=llmKbFile

🚀 Run the app

  • development

    fastapi dev --port 6001
    #uvicorn --reload --host 0.0.0.0 --port 6001 main:app
    
  • production

    fastapi run --port 6001
    
  • production with multipler workers

    fastapi run --port 6001 --workers 4
    

🔖 Windows requirements

libmagic (mandatory)

py -m pip install --upgrade python-magic-bin

tesseract-ocr (mandatory)

Install tesseract Last win-64 release

Add tesseract executable (C:\Program Files\Tesseract-OCR) to system PATH

$pathToAdd = "C:\Program Files\Tesseract-OCR"; `
$currentPath = [System.Environment]::GetEnvironmentVariable("Path", [System.EnvironmentVariableTarget]::Machine); `
if ($currentPath -split ';' -notcontains $pathToAdd) { `
  [System.Environment]::SetEnvironmentVariable("Path", "$currentPath;$pathToAdd", [System.EnvironmentVariableTarget]::Machine) `
}

libreoffice (optional: for robot_env set to development/production)

Install libreoffice Last win-64 release

Add libreoffice executable (C:\Program Files\LibreOffice\program) to system PATH

$pathToAdd = "C:\Program Files\LibreOffice\program"; `
$currentPath = [System.Environment]::GetEnvironmentVariable("Path", [System.EnvironmentVariableTarget]::Machine); `
if ($currentPath -split ';' -notcontains $pathToAdd) { `
  [System.Environment]::SetEnvironmentVariable("Path", "$currentPath;$pathToAdd", [System.EnvironmentVariableTarget]::Machine) `
}

poppler (optional: for robot_env set to development/production)

Download win poppler release Extract the zip, copy the nested folder "poppler-x.x.x." to a program folder (e.g. C:\Program Files\poppler-24.08.0) Add poppler executable (C:\Program Files\poppler-24.08.0\Library\bin) to system PATH

$pathToAdd = "C:\Program Files\poppler-24.08.0\Library\bin"; `
$currentPath = [System.Environment]::GetEnvironmentVariable("Path", [System.EnvironmentVariableTarget]::Machine); `
if ($currentPath -split ';' -notcontains $pathToAdd) { `
  [System.Environment]::SetEnvironmentVariable("Path", "$currentPath;$pathToAdd", [System.EnvironmentVariableTarget]::Machine) `
}

👷 Contributors

Build/distribute pkg from websolutespa bom [Github]

dir in robot project folder

  cd ./src/robot

🔖 requirements

py -m pip install --upgrade setuptools build twine streamlit 

🪛 build

if (Test-Path ./dist) {rm ./dist -r -force}; `
cp .\requirements.txt .\ws_bom_robot_app\ && `
py -m build && `
twine check dist/*

📦 test / 🧪 debugger

Install the package in editable project location

py -m pip install --upgrade -e .
py -m pip show ws-bom-robot-app

launch the debugger

streamlit run debugger.py --server.port 6002

✈️ publish

  • testpypi

    twine upload --verbose -r testpypi dist/*
    #py -m pip install -i https://test.pypi.org/simple/ --upgrade ws-bom-robot-app 
    
  • pypi

    twine upload --verbose dist/* 
    #py -m pip install --upgrade ws-bom-robot-app
    

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ws_bom_robot_app-0.0.3.tar.gz (26.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ws_bom_robot_app-0.0.3-py3-none-any.whl (32.8 kB view details)

Uploaded Python 3

File details

Details for the file ws_bom_robot_app-0.0.3.tar.gz.

File metadata

  • Download URL: ws_bom_robot_app-0.0.3.tar.gz
  • Upload date:
  • Size: 26.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for ws_bom_robot_app-0.0.3.tar.gz
Algorithm Hash digest
SHA256 e7378bd3dd76d31f85022b304e3156327b9cfb7f5a4322cd6d0f9d8e73ea8156
MD5 6977a655f516a698067bfe57aa13a352
BLAKE2b-256 ab3d7f89e03b67e6f3ed8759c6c994613fab1080bc46b799fb5915a6d4b1606c

See more details on using hashes here.

File details

Details for the file ws_bom_robot_app-0.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for ws_bom_robot_app-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9a5f870830304f6be7a84715878274340ff3152ddb05ed8edc73c3b94943f4c1
MD5 a456be032844e8fa6d5ca498f6629ae3
BLAKE2b-256 13b5c776d5a74688b4246ff0e788d9c16c3fdddf5373472cf152bba6ce2fb9a6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page