의존성 추가
This commit is contained in:
11
dockerfile
11
dockerfile
@@ -1,30 +1,19 @@
|
|||||||
# Use a more complete Python runtime as a parent image to avoid missing system libraries
|
|
||||||
FROM python:3.12
|
FROM python:3.12
|
||||||
|
|
||||||
# Install system dependencies required by OpenCV
|
|
||||||
RUN apt-get update && apt-get install -y libgl1 && rm -rf /var/lib/apt/lists/*
|
RUN apt-get update && apt-get install -y libgl1 && rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
# Set the working directory in the container
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
# Install uv
|
|
||||||
RUN pip install uv
|
RUN pip install uv
|
||||||
|
|
||||||
# Copy the dependency files
|
|
||||||
COPY pyproject.toml uv.lock ./
|
COPY pyproject.toml uv.lock ./
|
||||||
|
|
||||||
# Install dependencies using uv
|
|
||||||
# Note: We use the lock file for reproducible builds
|
|
||||||
RUN uv pip sync uv.lock --no-cache --system
|
RUN uv pip sync uv.lock --no-cache --system
|
||||||
|
|
||||||
# Copy the rest of the application's code
|
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
||||||
# Expose the port that Streamlit runs on
|
|
||||||
EXPOSE 8502
|
EXPOSE 8502
|
||||||
|
|
||||||
# Set the healthcheck
|
|
||||||
HEALTHCHECK CMD curl --fail http://localhost:8502/_stcore/health
|
HEALTHCHECK CMD curl --fail http://localhost:8502/_stcore/health
|
||||||
|
|
||||||
# Command to run the Streamlit app
|
|
||||||
CMD ["streamlit", "run", "app.py", "--server.port=8502", "--server.address=0.0.0.0"]
|
CMD ["streamlit", "run", "app.py", "--server.port=8502", "--server.address=0.0.0.0"]
|
||||||
|
|||||||
255
uv.lock
generated
255
uv.lock
generated
@@ -1,23 +1,41 @@
|
|||||||
# This file was autogenerated by uv via the following command:
|
# This file was autogenerated by uv via the following command:
|
||||||
# uv pip compile pyproject.toml -o uv.lock
|
# uv pip compile pyproject.toml -o uv.lock
|
||||||
|
aiohappyeyeballs==2.6.1
|
||||||
|
# via aiohttp
|
||||||
|
aiohttp==3.12.15
|
||||||
|
# via langchain-community
|
||||||
|
aiosignal==1.4.0
|
||||||
|
# via aiohttp
|
||||||
aistudio-sdk==0.3.6
|
aistudio-sdk==0.3.6
|
||||||
# via paddlex
|
# via paddlex
|
||||||
altair==5.5.0
|
altair==5.5.0
|
||||||
# via streamlit
|
# via streamlit
|
||||||
annotated-types==0.7.0
|
annotated-types==0.7.0
|
||||||
# via pydantic
|
# via pydantic
|
||||||
|
anyio==4.10.0
|
||||||
|
# via
|
||||||
|
# httpx
|
||||||
|
# openai
|
||||||
attrs==25.3.0
|
attrs==25.3.0
|
||||||
# via
|
# via
|
||||||
|
# aiohttp
|
||||||
# jsonschema
|
# jsonschema
|
||||||
# referencing
|
# referencing
|
||||||
bce-python-sdk==0.9.45
|
bce-python-sdk==0.9.45
|
||||||
# via aistudio-sdk
|
# via aistudio-sdk
|
||||||
|
beautifulsoup4==4.13.5
|
||||||
|
# via paddlex
|
||||||
blinker==1.9.0
|
blinker==1.9.0
|
||||||
# via streamlit
|
# via streamlit
|
||||||
cachetools==6.2.0
|
cachetools==6.2.0
|
||||||
# via streamlit
|
# via
|
||||||
|
# premailer
|
||||||
|
# streamlit
|
||||||
certifi==2025.8.3
|
certifi==2025.8.3
|
||||||
# via requests
|
# via
|
||||||
|
# httpcore
|
||||||
|
# httpx
|
||||||
|
# requests
|
||||||
chardet==5.2.0
|
chardet==5.2.0
|
||||||
# via paddlex
|
# via paddlex
|
||||||
charset-normalizer==3.4.3
|
charset-normalizer==3.4.3
|
||||||
@@ -28,59 +46,182 @@ click==8.2.1
|
|||||||
# streamlit
|
# streamlit
|
||||||
colorlog==6.9.0
|
colorlog==6.9.0
|
||||||
# via paddlex
|
# via paddlex
|
||||||
|
contourpy==1.3.3
|
||||||
|
# via matplotlib
|
||||||
|
cssselect==1.3.0
|
||||||
|
# via premailer
|
||||||
|
cssutils==2.11.1
|
||||||
|
# via premailer
|
||||||
|
cycler==0.12.1
|
||||||
|
# via matplotlib
|
||||||
|
dataclasses-json==0.6.7
|
||||||
|
# via langchain-community
|
||||||
|
distro==1.9.0
|
||||||
|
# via openai
|
||||||
|
einops==0.8.1
|
||||||
|
# via paddlex
|
||||||
|
et-xmlfile==2.0.0
|
||||||
|
# via openpyxl
|
||||||
filelock==3.19.1
|
filelock==3.19.1
|
||||||
# via
|
# via
|
||||||
# huggingface-hub
|
# huggingface-hub
|
||||||
# modelscope
|
# modelscope
|
||||||
# paddlex
|
# paddlex
|
||||||
|
fonttools==4.59.2
|
||||||
|
# via matplotlib
|
||||||
|
frozenlist==1.7.0
|
||||||
|
# via
|
||||||
|
# aiohttp
|
||||||
|
# aiosignal
|
||||||
fsspec==2025.9.0
|
fsspec==2025.9.0
|
||||||
# via huggingface-hub
|
# via huggingface-hub
|
||||||
|
ftfy==6.3.1
|
||||||
|
# via paddlex
|
||||||
future==1.0.0
|
future==1.0.0
|
||||||
# via bce-python-sdk
|
# via bce-python-sdk
|
||||||
gitdb==4.0.12
|
gitdb==4.0.12
|
||||||
# via gitpython
|
# via gitpython
|
||||||
gitpython==3.1.45
|
gitpython==3.1.45
|
||||||
# via streamlit
|
# via streamlit
|
||||||
|
greenlet==3.2.4
|
||||||
|
# via sqlalchemy
|
||||||
|
h11==0.16.0
|
||||||
|
# via httpcore
|
||||||
hf-xet==1.1.9
|
hf-xet==1.1.9
|
||||||
# via huggingface-hub
|
# via huggingface-hub
|
||||||
|
httpcore==1.0.9
|
||||||
|
# via httpx
|
||||||
|
httpx==0.28.1
|
||||||
|
# via
|
||||||
|
# langsmith
|
||||||
|
# openai
|
||||||
|
# paddlepaddle
|
||||||
|
httpx-sse==0.4.1
|
||||||
|
# via langchain-community
|
||||||
huggingface-hub==0.34.4
|
huggingface-hub==0.34.4
|
||||||
# via paddlex
|
# via
|
||||||
|
# paddlex
|
||||||
|
# tokenizers
|
||||||
idna==3.10
|
idna==3.10
|
||||||
# via requests
|
# via
|
||||||
|
# anyio
|
||||||
|
# httpx
|
||||||
|
# requests
|
||||||
|
# yarl
|
||||||
imagesize==1.4.1
|
imagesize==1.4.1
|
||||||
# via paddlex
|
# via paddlex
|
||||||
jinja2==3.1.6
|
jinja2==3.1.6
|
||||||
# via
|
# via
|
||||||
# altair
|
# altair
|
||||||
|
# paddlex
|
||||||
# pydeck
|
# pydeck
|
||||||
|
jiter==0.10.0
|
||||||
|
# via openai
|
||||||
|
joblib==1.5.2
|
||||||
|
# via scikit-learn
|
||||||
|
jsonpatch==1.33
|
||||||
|
# via langchain-core
|
||||||
|
jsonpointer==3.0.0
|
||||||
|
# via jsonpatch
|
||||||
jsonschema==4.25.1
|
jsonschema==4.25.1
|
||||||
# via altair
|
# via altair
|
||||||
jsonschema-specifications==2025.4.1
|
jsonschema-specifications==2025.4.1
|
||||||
# via jsonschema
|
# via jsonschema
|
||||||
|
kiwisolver==1.4.9
|
||||||
|
# via matplotlib
|
||||||
|
langchain==0.3.27
|
||||||
|
# via
|
||||||
|
# langchain-community
|
||||||
|
# paddlex
|
||||||
|
langchain-community==0.3.29
|
||||||
|
# via paddlex
|
||||||
|
langchain-core==0.3.75
|
||||||
|
# via
|
||||||
|
# langchain
|
||||||
|
# langchain-community
|
||||||
|
# langchain-openai
|
||||||
|
# langchain-text-splitters
|
||||||
|
# paddlex
|
||||||
|
langchain-openai==0.3.32
|
||||||
|
# via paddlex
|
||||||
|
langchain-text-splitters==0.3.11
|
||||||
|
# via langchain
|
||||||
|
langsmith==0.4.23
|
||||||
|
# via
|
||||||
|
# langchain
|
||||||
|
# langchain-community
|
||||||
|
# langchain-core
|
||||||
|
lxml==6.0.1
|
||||||
|
# via
|
||||||
|
# paddlex
|
||||||
|
# premailer
|
||||||
markupsafe==3.0.2
|
markupsafe==3.0.2
|
||||||
# via jinja2
|
# via jinja2
|
||||||
|
marshmallow==3.26.1
|
||||||
|
# via dataclasses-json
|
||||||
|
matplotlib==3.10.6
|
||||||
|
# via paddleslim
|
||||||
modelscope==1.29.2
|
modelscope==1.29.2
|
||||||
# via paddlex
|
# via paddlex
|
||||||
|
more-itertools==10.8.0
|
||||||
|
# via cssutils
|
||||||
|
multidict==6.6.4
|
||||||
|
# via
|
||||||
|
# aiohttp
|
||||||
|
# yarl
|
||||||
|
mypy-extensions==1.1.0
|
||||||
|
# via typing-inspect
|
||||||
narwhals==2.3.0
|
narwhals==2.3.0
|
||||||
# via altair
|
# via altair
|
||||||
numpy==2.3.2
|
networkx==3.5
|
||||||
|
# via paddlepaddle
|
||||||
|
numpy==1.26.4
|
||||||
# via
|
# via
|
||||||
|
# paddleocr-interface (pyproject.toml)
|
||||||
|
# contourpy
|
||||||
|
# langchain-community
|
||||||
|
# matplotlib
|
||||||
# opencv-contrib-python
|
# opencv-contrib-python
|
||||||
|
# opencv-python
|
||||||
|
# opt-einsum
|
||||||
|
# paddlepaddle
|
||||||
# paddlex
|
# paddlex
|
||||||
# pandas
|
# pandas
|
||||||
# pydeck
|
# pydeck
|
||||||
|
# scikit-learn
|
||||||
|
# scipy
|
||||||
# shapely
|
# shapely
|
||||||
# streamlit
|
# streamlit
|
||||||
|
openai==1.104.2
|
||||||
|
# via
|
||||||
|
# langchain-openai
|
||||||
|
# paddlex
|
||||||
opencv-contrib-python==4.10.0.84
|
opencv-contrib-python==4.10.0.84
|
||||||
# via paddlex
|
# via paddlex
|
||||||
|
opencv-python==4.6.0.66
|
||||||
|
# via paddleslim
|
||||||
|
openpyxl==3.1.5
|
||||||
|
# via paddlex
|
||||||
|
opt-einsum==3.3.0
|
||||||
|
# via paddlepaddle
|
||||||
|
orjson==3.11.3
|
||||||
|
# via langsmith
|
||||||
packaging==25.0
|
packaging==25.0
|
||||||
# via
|
# via
|
||||||
# altair
|
# altair
|
||||||
# huggingface-hub
|
# huggingface-hub
|
||||||
|
# langchain-core
|
||||||
|
# langsmith
|
||||||
|
# marshmallow
|
||||||
|
# matplotlib
|
||||||
# paddlex
|
# paddlex
|
||||||
# streamlit
|
# streamlit
|
||||||
paddleocr==3.2.0
|
paddleocr==3.2.0
|
||||||
# via paddleocr-interface (pyproject.toml)
|
# via paddleocr-interface (pyproject.toml)
|
||||||
|
paddlepaddle==3.1.1
|
||||||
|
# via paddleocr-interface (pyproject.toml)
|
||||||
|
paddleslim==2.6.0
|
||||||
|
# via paddleocr-interface (pyproject.toml)
|
||||||
paddlex==3.2.1
|
paddlex==3.2.1
|
||||||
# via paddleocr
|
# via paddleocr
|
||||||
pandas==2.3.2
|
pandas==2.3.2
|
||||||
@@ -89,14 +230,25 @@ pandas==2.3.2
|
|||||||
# streamlit
|
# streamlit
|
||||||
pillow==11.3.0
|
pillow==11.3.0
|
||||||
# via
|
# via
|
||||||
|
# matplotlib
|
||||||
|
# paddlepaddle
|
||||||
|
# paddleslim
|
||||||
# paddlex
|
# paddlex
|
||||||
# streamlit
|
# streamlit
|
||||||
|
premailer==3.10.0
|
||||||
|
# via paddlex
|
||||||
prettytable==3.16.0
|
prettytable==3.16.0
|
||||||
# via
|
# via
|
||||||
# aistudio-sdk
|
# aistudio-sdk
|
||||||
# paddlex
|
# paddlex
|
||||||
|
propcache==0.3.2
|
||||||
|
# via
|
||||||
|
# aiohttp
|
||||||
|
# yarl
|
||||||
protobuf==6.32.0
|
protobuf==6.32.0
|
||||||
# via streamlit
|
# via
|
||||||
|
# paddlepaddle
|
||||||
|
# streamlit
|
||||||
psutil==7.0.0
|
psutil==7.0.0
|
||||||
# via aistudio-sdk
|
# via aistudio-sdk
|
||||||
py-cpuinfo==9.0.0
|
py-cpuinfo==9.0.0
|
||||||
@@ -108,33 +260,65 @@ pyclipper==1.3.0.post6
|
|||||||
pycryptodome==3.23.0
|
pycryptodome==3.23.0
|
||||||
# via bce-python-sdk
|
# via bce-python-sdk
|
||||||
pydantic==2.11.7
|
pydantic==2.11.7
|
||||||
# via paddlex
|
# via
|
||||||
|
# langchain
|
||||||
|
# langchain-core
|
||||||
|
# langsmith
|
||||||
|
# openai
|
||||||
|
# paddlex
|
||||||
|
# pydantic-settings
|
||||||
pydantic-core==2.33.2
|
pydantic-core==2.33.2
|
||||||
# via pydantic
|
# via pydantic
|
||||||
|
pydantic-settings==2.10.1
|
||||||
|
# via langchain-community
|
||||||
pydeck==0.9.1
|
pydeck==0.9.1
|
||||||
# via streamlit
|
# via streamlit
|
||||||
|
pyparsing==3.2.3
|
||||||
|
# via matplotlib
|
||||||
pypdfium2==4.30.0
|
pypdfium2==4.30.0
|
||||||
# via paddlex
|
# via paddlex
|
||||||
python-dateutil==2.9.0.post0
|
python-dateutil==2.9.0.post0
|
||||||
# via pandas
|
# via
|
||||||
|
# matplotlib
|
||||||
|
# pandas
|
||||||
|
python-dotenv==1.1.1
|
||||||
|
# via pydantic-settings
|
||||||
pytz==2025.2
|
pytz==2025.2
|
||||||
# via pandas
|
# via pandas
|
||||||
pyyaml==6.0.2
|
pyyaml==6.0.2
|
||||||
# via
|
# via
|
||||||
# huggingface-hub
|
# huggingface-hub
|
||||||
|
# langchain
|
||||||
|
# langchain-community
|
||||||
|
# langchain-core
|
||||||
# paddleocr
|
# paddleocr
|
||||||
|
# paddleslim
|
||||||
# paddlex
|
# paddlex
|
||||||
|
pyzmq==27.0.2
|
||||||
|
# via paddleslim
|
||||||
referencing==0.36.2
|
referencing==0.36.2
|
||||||
# via
|
# via
|
||||||
# jsonschema
|
# jsonschema
|
||||||
# jsonschema-specifications
|
# jsonschema-specifications
|
||||||
|
regex==2025.9.1
|
||||||
|
# via
|
||||||
|
# paddlex
|
||||||
|
# tiktoken
|
||||||
requests==2.32.5
|
requests==2.32.5
|
||||||
# via
|
# via
|
||||||
# aistudio-sdk
|
# aistudio-sdk
|
||||||
# huggingface-hub
|
# huggingface-hub
|
||||||
|
# langchain
|
||||||
|
# langchain-community
|
||||||
|
# langsmith
|
||||||
# modelscope
|
# modelscope
|
||||||
# paddlex
|
# paddlex
|
||||||
|
# premailer
|
||||||
|
# requests-toolbelt
|
||||||
# streamlit
|
# streamlit
|
||||||
|
# tiktoken
|
||||||
|
requests-toolbelt==1.0.0
|
||||||
|
# via langsmith
|
||||||
rpds-py==0.27.1
|
rpds-py==0.27.1
|
||||||
# via
|
# via
|
||||||
# jsonschema
|
# jsonschema
|
||||||
@@ -143,6 +327,12 @@ ruamel-yaml==0.18.15
|
|||||||
# via paddlex
|
# via paddlex
|
||||||
ruamel-yaml-clib==0.2.12
|
ruamel-yaml-clib==0.2.12
|
||||||
# via ruamel-yaml
|
# via ruamel-yaml
|
||||||
|
scikit-learn==1.7.1
|
||||||
|
# via
|
||||||
|
# paddleslim
|
||||||
|
# paddlex
|
||||||
|
scipy==1.16.1
|
||||||
|
# via scikit-learn
|
||||||
setuptools==80.9.0
|
setuptools==80.9.0
|
||||||
# via modelscope
|
# via modelscope
|
||||||
shapely==2.1.1
|
shapely==2.1.1
|
||||||
@@ -153,10 +343,33 @@ six==1.17.0
|
|||||||
# python-dateutil
|
# python-dateutil
|
||||||
smmap==5.0.2
|
smmap==5.0.2
|
||||||
# via gitdb
|
# via gitdb
|
||||||
|
sniffio==1.3.1
|
||||||
|
# via
|
||||||
|
# anyio
|
||||||
|
# openai
|
||||||
|
soupsieve==2.8
|
||||||
|
# via beautifulsoup4
|
||||||
|
sqlalchemy==2.0.43
|
||||||
|
# via
|
||||||
|
# langchain
|
||||||
|
# langchain-community
|
||||||
streamlit==1.49.1
|
streamlit==1.49.1
|
||||||
# via paddleocr-interface (pyproject.toml)
|
# via paddleocr-interface (pyproject.toml)
|
||||||
|
swig==4.3.1.post0
|
||||||
|
# via paddleslim
|
||||||
tenacity==9.1.2
|
tenacity==9.1.2
|
||||||
# via streamlit
|
# via
|
||||||
|
# langchain-community
|
||||||
|
# langchain-core
|
||||||
|
# streamlit
|
||||||
|
threadpoolctl==3.6.0
|
||||||
|
# via scikit-learn
|
||||||
|
tiktoken==0.11.0
|
||||||
|
# via
|
||||||
|
# langchain-openai
|
||||||
|
# paddlex
|
||||||
|
tokenizers==0.22.0
|
||||||
|
# via paddlex
|
||||||
toml==0.10.2
|
toml==0.10.2
|
||||||
# via streamlit
|
# via streamlit
|
||||||
tornado==6.5.2
|
tornado==6.5.2
|
||||||
@@ -166,19 +379,33 @@ tqdm==4.67.1
|
|||||||
# aistudio-sdk
|
# aistudio-sdk
|
||||||
# huggingface-hub
|
# huggingface-hub
|
||||||
# modelscope
|
# modelscope
|
||||||
|
# openai
|
||||||
|
# paddleslim
|
||||||
typing-extensions==4.15.0
|
typing-extensions==4.15.0
|
||||||
# via
|
# via
|
||||||
|
# aiosignal
|
||||||
# altair
|
# altair
|
||||||
|
# anyio
|
||||||
|
# beautifulsoup4
|
||||||
# huggingface-hub
|
# huggingface-hub
|
||||||
|
# langchain-core
|
||||||
|
# openai
|
||||||
# paddleocr
|
# paddleocr
|
||||||
|
# paddlepaddle
|
||||||
# paddlex
|
# paddlex
|
||||||
# pydantic
|
# pydantic
|
||||||
# pydantic-core
|
# pydantic-core
|
||||||
# referencing
|
# referencing
|
||||||
|
# sqlalchemy
|
||||||
# streamlit
|
# streamlit
|
||||||
|
# typing-inspect
|
||||||
# typing-inspection
|
# typing-inspection
|
||||||
|
typing-inspect==0.9.0
|
||||||
|
# via dataclasses-json
|
||||||
typing-inspection==0.4.1
|
typing-inspection==0.4.1
|
||||||
# via pydantic
|
# via
|
||||||
|
# pydantic
|
||||||
|
# pydantic-settings
|
||||||
tzdata==2025.2
|
tzdata==2025.2
|
||||||
# via pandas
|
# via pandas
|
||||||
ujson==5.11.0
|
ujson==5.11.0
|
||||||
@@ -190,4 +417,10 @@ urllib3==2.5.0
|
|||||||
watchdog==6.0.0
|
watchdog==6.0.0
|
||||||
# via streamlit
|
# via streamlit
|
||||||
wcwidth==0.2.13
|
wcwidth==0.2.13
|
||||||
# via prettytable
|
# via
|
||||||
|
# ftfy
|
||||||
|
# prettytable
|
||||||
|
yarl==1.20.1
|
||||||
|
# via aiohttp
|
||||||
|
zstandard==0.24.0
|
||||||
|
# via langsmith
|
||||||
|
|||||||
Reference in New Issue
Block a user