deddoggo commited on
Commit
af7c566
·
1 Parent(s): 636e1c0

install dependencies

Browse files
Files changed (2) hide show
  1. Dockerfile +40 -0
  2. environment.yml +23 -0
Dockerfile ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Chọn một base image. Nếu Space của bạn là GPU, một image có sẵn CUDA và Conda sẽ tốt hơn.
2
+ # Ví dụ: nvidia/cuda:11.8.0-cudnn8-devel-ubuntu22.04 sau đó cài Miniconda vào.
3
+ # Hoặc dùng continuumio/miniconda3 và dựa vào cudatoolkit từ environment.yml.
4
+ FROM continuumio/miniconda3:latest
5
+
6
+ # Tạo thư mục làm việc
7
+ WORKDIR /app
8
+
9
+ # Sao chép file environment.yml vào image
10
+ COPY environment.yml .
11
+
12
+ # Tạo môi trường Conda từ file environment.yml
13
+ # Điều này sẽ cài đặt Python, Pip, Cudatoolkit=11.8, FAISS, và các gói khác trừ PyTorch.
14
+ RUN conda env create -f environment.yml
15
+
16
+ # Kích hoạt môi trường Conda và cài đặt PyTorch, torchvision, torchaudio bằng pip
17
+ # QUAN TRỌNG: Thay thế X.Y.Z và A.B.C bằng các phiên bản THỰC TẾ bạn tìm thấy trên index cu118!
18
+ RUN echo "Installing PyTorch, torchvision, torchaudio with pip from PyTorch index..." && \
19
+ conda run -n llm-rag-env pip install torch==X.Y.Z torchvision==A.B.C torchaudio==X.Y.Z --index-url https://download.pytorch.org/whl/cu118
20
+ # Ví dụ nếu torch 2.3.0 có sẵn:
21
+ # conda run -n llm-rag-env pip install torch==2.3.0 torchvision==0.18.0 torchaudio==2.3.0 --index-url https://download.pytorch.org/whl/cu118
22
+
23
+ # Đặt SHELL để các lệnh RUN và CMD/ENTRYPOINT tiếp theo mặc định chạy trong môi trường Conda đã kích hoạt
24
+ # Đảm bảo tên môi trường ('llm-rag-env') khớp với tên trong environment.yml
25
+ SHELL ["conda", "run", "-n", "llm-rag-env", "/bin/bash", "-c"]
26
+
27
+ # (Tùy chọn nhưng khuyến khích) Xác minh cài đặt
28
+ RUN echo "Verifying installations..."
29
+ RUN python --version
30
+ RUN python -c "import torch; print(f'PyTorch version: {torch.__version__}'); print(f'Torch CUDA available: {torch.cuda.is_available()}'); print(f'Torch built with CUDA version: {torch.version.cuda}')"
31
+ RUN python -c "import torchvision; print(f'Torchvision version: {torchvision.__version__}')"
32
+ RUN python -c "import torchaudio; print(f'Torchaudio version: {torchaudio.__version__}')"
33
+ RUN python -c "import faiss; print(f'FAISS version: {faiss.__version__}')"
34
+ RUN conda list # Liệt kê tất cả các gói trong môi trường Conda
35
+
36
+ # Sao chép mã nguồn ứng dụng của bạn vào image
37
+ COPY . .
38
+
39
+ # Lệnh để chạy ứng dụng Gradio của bạn (thay app.py bằng tên file chính của bạn)
40
+ CMD ["python", "app.py"]
environment.yml ADDED
@@ -0,0 +1,23 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ name: llm-rag-env # Đặt tên cho môi trường của bạn
2
+ channels:
3
+ - nvidia # Kênh cho cudatoolkit (nếu Space của bạn có GPU)
4
+ - conda-forge # Kênh cho faiss và các gói khác
5
+ - defaults
6
+ dependencies:
7
+ - python=3.11 # Hoặc phiên bản Python bạn muốn
8
+ - pip
9
+ # Quan trọng: Đảm bảo phiên bản cudatoolkit phù hợp với GPU trên Space
10
+ - cudatoolkit=11.8
11
+ # FAISS từ conda-forge
12
+ - conda-forge::faiss=1.9.0=*cuda* # Dấu *cuda* để Conda tìm bản build GPU
13
+ # Các gói khác
14
+ - huggingface_hub==0.31.2 # Hoặc phiên bản mới nhất bạn muốn
15
+ - gradio==5.31.0 # Hoặc phiên bản mới nhất bạn muốn
16
+ - sentence-transformers==4.1.0 # Thêm ==phiên_bản
17
+ - unsloth==2025.5.7 # Thêm ==phiên_bản
18
+ - transformers # Thêm ==phiên_bản
19
+ - rank_bm25==0.2.2
20
+ - numpy==1.26.4
21
+ # Nếu có gói nào chỉ có trên pip và không có trên Conda channels
22
+ # - pip:
23
+ # - ten-goi-pip