leo-bourrel commited on
Commit
05dd191
·
2 Parent(s): 27a479a 795aeeb

Merge branch 'dockerify' into main

Browse files
Files changed (4) hide show
  1. Dockerfile +25 -0
  2. README.md +2 -1
  3. custom_pgvector.py +2 -7
  4. requirements.txt +8 -1
Dockerfile ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # app/Dockerfile
2
+
3
+ FROM python:3.10-slim
4
+
5
+ WORKDIR /app
6
+
7
+ RUN apt-get update && apt-get install -y \
8
+ build-essential \
9
+ curl \
10
+ software-properties-common \
11
+ git \
12
+ libpq-dev \
13
+ gcc \
14
+ && rm -rf /var/lib/apt/lists/*
15
+
16
+ COPY ./ /app/
17
+
18
+
19
+ RUN pip3 install -r /app/requirements.txt
20
+
21
+ EXPOSE 7860
22
+
23
+ HEALTHCHECK CMD curl --fail http://localhost:7860/_stcore/health
24
+
25
+ ENTRYPOINT ["streamlit", "run", "app.py", "--server.port=7860", "--server.address=0.0.0.0"]
README.md CHANGED
@@ -3,7 +3,8 @@ title: Test Streamlit
3
  emoji: 📈
4
  colorFrom: gray
5
  colorTo: indigo
6
- sdk: streamlit
 
7
  sdk_version: 1.27.2
8
  app_file: app.py
9
  pinned: false
 
3
  emoji: 📈
4
  colorFrom: gray
5
  colorTo: indigo
6
+ sdk: docker
7
+ app_port: 7860
8
  sdk_version: 1.27.2
9
  app_file: app.py
10
  pinned: false
custom_pgvector.py CHANGED
@@ -1,25 +1,20 @@
1
  from __future__ import annotations
2
 
3
- import asyncio
4
  import contextlib
5
  import enum
6
  import json
7
  import logging
8
- from functools import partial
9
- from typing import (Any, Callable, Dict, Generator, Iterable, List, Optional,
10
- Tuple, Type)
11
 
12
- import numpy as np
13
  import pandas as pd
14
  import sqlalchemy
15
  from langchain.docstore.document import Document
16
  from langchain.schema.embeddings import Embeddings
17
  from langchain.utils import get_from_dict_or_env
18
  from langchain.vectorstores.base import VectorStore
19
- from langchain.vectorstores.pgvector import BaseModel
20
  from pgvector.sqlalchemy import Vector
21
  from sqlalchemy import delete, text
22
- from sqlalchemy.orm import Session, declarative_base, relationship
23
 
24
 
25
  class DistanceStrategy(str, enum.Enum):
 
1
  from __future__ import annotations
2
 
 
3
  import contextlib
4
  import enum
5
  import json
6
  import logging
7
+ from typing import Any, Dict, Generator, Iterable, List, Optional, Tuple, Type
 
 
8
 
 
9
  import pandas as pd
10
  import sqlalchemy
11
  from langchain.docstore.document import Document
12
  from langchain.schema.embeddings import Embeddings
13
  from langchain.utils import get_from_dict_or_env
14
  from langchain.vectorstores.base import VectorStore
 
15
  from pgvector.sqlalchemy import Vector
16
  from sqlalchemy import delete, text
17
+ from sqlalchemy.orm import Session, declarative_base
18
 
19
 
20
  class DistanceStrategy(str, enum.Enum):
requirements.txt CHANGED
@@ -1,2 +1,9 @@
 
 
 
1
  streamlit
2
- streamlit-chat
 
 
 
 
 
1
+ gpt4all
2
+ langchain
3
+ openai
4
  streamlit
5
+ streamlit-chat
6
+ sqlalchemy
7
+ pandas
8
+ pgvector
9
+ psycopg2