This commit is contained in:
parent
70fe51058a
commit
91a32aa8ab
9
.woodpecker.yml
Normal file
9
.woodpecker.yml
Normal file
|
@ -0,0 +1,9 @@
|
|||
pipeline:
|
||||
build-image:
|
||||
image: docker
|
||||
commands:
|
||||
- docker login -u guillem -p $GITEA_API_KEY
|
||||
- docker build . -t git.guillemborrell.es/guillem/hellocomputer:0.1
|
||||
- docker push git.guillemborrell.es/guillem/hellocomputer:0.1
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
19
Dockerfile
Normal file
19
Dockerfile
Normal file
|
@ -0,0 +1,19 @@
|
|||
# Use an official Python runtime as a parent image
|
||||
FROM python:3.12-slim
|
||||
|
||||
# Set the working directory in the container to /app
|
||||
WORKDIR /app
|
||||
|
||||
# Add the current directory contents into the container at /app
|
||||
ADD . /app
|
||||
|
||||
# Install any needed packages specified in requirements.txt
|
||||
RUN pip install uv
|
||||
RUN uv pip install -r requirements.txt
|
||||
RUN uv pip install -e .
|
||||
|
||||
# Make port 80 available to the world outside this container
|
||||
EXPOSE 80
|
||||
|
||||
# Run the command to start uvicorn
|
||||
CMD ["uvicorn", "hellocomputer.main:app", "--host", "0.0.0.0", "--port", "80"]
|
213
requirements.txt
Normal file
213
requirements.txt
Normal file
|
@ -0,0 +1,213 @@
|
|||
# This file was autogenerated by uv via the following command:
|
||||
# uv pip compile requirements.in
|
||||
aiobotocore==2.13.0
|
||||
# via s3fs
|
||||
aiofiles==23.2.1
|
||||
aiohttp==3.9.5
|
||||
# via
|
||||
# aiobotocore
|
||||
# langchain
|
||||
# langchain-community
|
||||
# s3fs
|
||||
aioitertools==0.11.0
|
||||
# via aiobotocore
|
||||
aiosignal==1.3.1
|
||||
# via aiohttp
|
||||
annotated-types==0.7.0
|
||||
# via pydantic
|
||||
anyio==4.3.0
|
||||
# via
|
||||
# httpx
|
||||
# openai
|
||||
# starlette
|
||||
# watchfiles
|
||||
attrs==23.2.0
|
||||
# via aiohttp
|
||||
botocore==1.34.106
|
||||
# via aiobotocore
|
||||
certifi==2024.2.2
|
||||
# via
|
||||
# httpcore
|
||||
# httpx
|
||||
# requests
|
||||
charset-normalizer==3.3.2
|
||||
# via requests
|
||||
click==8.1.7
|
||||
# via
|
||||
# typer
|
||||
# uvicorn
|
||||
dataclasses-json==0.6.6
|
||||
# via langchain-community
|
||||
distro==1.9.0
|
||||
# via openai
|
||||
dnspython==2.6.1
|
||||
# via email-validator
|
||||
duckdb==0.10.3
|
||||
email-validator==2.1.1
|
||||
# via fastapi
|
||||
fastapi==0.111.0
|
||||
fastapi-cli==0.0.4
|
||||
# via fastapi
|
||||
frozenlist==1.4.1
|
||||
# via
|
||||
# aiohttp
|
||||
# aiosignal
|
||||
fsspec==2024.5.0
|
||||
# via s3fs
|
||||
h11==0.14.0
|
||||
# via
|
||||
# httpcore
|
||||
# uvicorn
|
||||
httpcore==1.0.5
|
||||
# via httpx
|
||||
httptools==0.6.1
|
||||
# via uvicorn
|
||||
httpx==0.27.0
|
||||
# via
|
||||
# fastapi
|
||||
# openai
|
||||
idna==3.7
|
||||
# via
|
||||
# anyio
|
||||
# email-validator
|
||||
# httpx
|
||||
# requests
|
||||
# yarl
|
||||
jinja2==3.1.4
|
||||
# via fastapi
|
||||
jmespath==1.0.1
|
||||
# via botocore
|
||||
jsonpatch==1.33
|
||||
# via langchain-core
|
||||
jsonpointer==2.4
|
||||
# via jsonpatch
|
||||
langchain==0.2.1
|
||||
# via langchain-community
|
||||
langchain-community==0.2.1
|
||||
langchain-core==0.2.1
|
||||
# via
|
||||
# langchain
|
||||
# langchain-community
|
||||
# langchain-text-splitters
|
||||
langchain-text-splitters==0.2.0
|
||||
# via langchain
|
||||
langsmith==0.1.63
|
||||
# via
|
||||
# langchain
|
||||
# langchain-community
|
||||
# langchain-core
|
||||
markdown-it-py==3.0.0
|
||||
# via rich
|
||||
markupsafe==2.1.5
|
||||
# via jinja2
|
||||
marshmallow==3.21.2
|
||||
# via dataclasses-json
|
||||
mdurl==0.1.2
|
||||
# via markdown-it-py
|
||||
multidict==6.0.5
|
||||
# via
|
||||
# aiohttp
|
||||
# yarl
|
||||
mypy-extensions==1.0.0
|
||||
# via typing-inspect
|
||||
numpy==1.26.4
|
||||
# via
|
||||
# langchain
|
||||
# langchain-community
|
||||
openai==1.30.3
|
||||
orjson==3.10.3
|
||||
# via
|
||||
# fastapi
|
||||
# langsmith
|
||||
packaging==23.2
|
||||
# via
|
||||
# langchain-core
|
||||
# marshmallow
|
||||
pydantic==2.7.1
|
||||
# via
|
||||
# fastapi
|
||||
# langchain
|
||||
# langchain-core
|
||||
# langsmith
|
||||
# openai
|
||||
# pydantic-settings
|
||||
pydantic-core==2.18.2
|
||||
# via pydantic
|
||||
pydantic-settings==2.2.1
|
||||
pygments==2.18.0
|
||||
# via rich
|
||||
python-dateutil==2.9.0.post0
|
||||
# via botocore
|
||||
python-dotenv==1.0.1
|
||||
# via
|
||||
# pydantic-settings
|
||||
# uvicorn
|
||||
python-multipart==0.0.9
|
||||
# via fastapi
|
||||
pyyaml==6.0.1
|
||||
# via
|
||||
# langchain
|
||||
# langchain-community
|
||||
# langchain-core
|
||||
# uvicorn
|
||||
requests==2.32.2
|
||||
# via
|
||||
# langchain
|
||||
# langchain-community
|
||||
# langsmith
|
||||
rich==13.7.1
|
||||
# via typer
|
||||
s3fs==2024.5.0
|
||||
shellingham==1.5.4
|
||||
# via typer
|
||||
six==1.16.0
|
||||
# via python-dateutil
|
||||
sniffio==1.3.1
|
||||
# via
|
||||
# anyio
|
||||
# httpx
|
||||
# openai
|
||||
sqlalchemy==2.0.30
|
||||
# via
|
||||
# langchain
|
||||
# langchain-community
|
||||
starlette==0.37.2
|
||||
# via fastapi
|
||||
tenacity==8.3.0
|
||||
# via
|
||||
# langchain
|
||||
# langchain-community
|
||||
# langchain-core
|
||||
tqdm==4.66.4
|
||||
# via openai
|
||||
typer==0.12.3
|
||||
# via fastapi-cli
|
||||
typing-extensions==4.12.0
|
||||
# via
|
||||
# fastapi
|
||||
# openai
|
||||
# pydantic
|
||||
# pydantic-core
|
||||
# sqlalchemy
|
||||
# typer
|
||||
# typing-inspect
|
||||
typing-inspect==0.9.0
|
||||
# via dataclasses-json
|
||||
ujson==5.10.0
|
||||
# via fastapi
|
||||
urllib3==2.2.1
|
||||
# via
|
||||
# botocore
|
||||
# requests
|
||||
uvicorn==0.29.0
|
||||
# via fastapi
|
||||
uvloop==0.19.0
|
||||
# via uvicorn
|
||||
watchfiles==0.21.0
|
||||
# via uvicorn
|
||||
websockets==12.0
|
||||
# via uvicorn
|
||||
wrapt==1.16.0
|
||||
# via aiobotocore
|
||||
yarl==1.9.4
|
||||
# via aiohttp
|
|
@ -45,6 +45,6 @@ app.include_router(files.router)
|
|||
app.include_router(analysis.router)
|
||||
app.mount(
|
||||
"/",
|
||||
StaticFiles(directory=static_path, html=True, packages=["bootstrap4"]),
|
||||
StaticFiles(directory=static_path, html=True),
|
||||
name="static",
|
||||
)
|
||||
|
|
|
@ -48,17 +48,29 @@
|
|||
<button type="button" class="btn-close" data-bs-dismiss="modal"
|
||||
aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<input type="file" class="custom-file-input" id="inputGroupFile01">
|
||||
</div>
|
||||
<div class="modal-body" id="uploadButtonDiv">
|
||||
<button type="button" class="btn btn-primary" id="uploadButton">Upload</button>
|
||||
</div>
|
||||
<div class="modal-body" id="uploadResultDiv">
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
|
||||
</div>
|
||||
<form id="fileInputForm">
|
||||
<div class="modal-body">
|
||||
<label for="datasetLabel" class="form-label">Sesson name</label>
|
||||
<input type="text" class="form-control" id="datasetLabel"
|
||||
aria-describedby="labelHelp">
|
||||
<div id="labelHelp" class="form-text">You'll be able to recover this file in the
|
||||
future
|
||||
with this name
|
||||
</div>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<input type="file" class="custom-file-input" id="inputGroupFile01">
|
||||
</div>
|
||||
<div class="modal-body" id="uploadButtonDiv">
|
||||
<button type="button" class="btn btn-primary" id="uploadButton">Upload</button>
|
||||
</div>
|
||||
<div class="modal-body" id="uploadResultDiv">
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal"
|
||||
onclick="document.getElementById('fileInputForm').reset()">Close</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
Loading…
Reference in a new issue