fix(chatbot): کوئری خدمات و نصب torch نسخهٔ CPU

- content.py: ستون desc در SQL بدون کوتیشن بود و PostgreSQL آن را کلمهٔ کلیدی
  می‌گیرد؛ نتیجه: «Initial index sync failed: syntax error at or near "desc"»
  در استارت و غیرقابل استفاده ماندن چت تا reindex. حالا "desc" کوتیشن شده.
- Dockerfile: با این‌که سرور GPU ندارد، pip نسخهٔ CUDA تورچ را از PyPI می‌گرفت
  (ایمیج ۹.۷GB با کتابخانه‌های nvidia). اول torch از ایندکس CPU نصب می‌شود.
This commit is contained in:
aramesh-site deploy
2026-09-26 22:04:29 +00:00
parent 9d0015808c
commit d55c8cc1e5
2 changed files with 6 additions and 1 deletions
+5
View File
@@ -6,6 +6,11 @@ WORKDIR /srv
# همهٔ وابستگی‌های سنگین (numpy/scikit-learn/torch/psycopg) ویل prebuilt دارند — # همهٔ وابستگی‌های سنگین (numpy/scikit-learn/torch/psycopg) ویل prebuilt دارند —
# بدون کامپایلر؛ دسترسی apt در شبکهٔ بیلد قابل‌اعتماد نیست # بدون کامپایلر؛ دسترسی apt در شبکهٔ بیلد قابل‌اعتماد نیست
COPY requirements.txt /srv/chatbot/requirements.txt COPY requirements.txt /srv/chatbot/requirements.txt
# torch روی PyPI پیش‌فرض لینوکس نسخهٔ CUDA است و کل استک nvidia را می‌آورد
# (ایمیج ~۹.۷GB روی سرور بدون GPU). نسخهٔ CPU حدود ۲۰۰MB است — همین اول نصب
# می‌شود تا pip در گام بعد آن را برآورده‌شده ببیند.
# روی ماشینی با GPU می‌توان این خط را حذف کرد.
RUN pip install --no-cache-dir --index-url https://download.pytorch.org/whl/cpu "torch>=2.2"
RUN pip install --no-cache-dir -r /srv/chatbot/requirements.txt RUN pip install --no-cache-dir -r /srv/chatbot/requirements.txt
COPY . /srv/chatbot/ COPY . /srv/chatbot/
+1 -1
View File
@@ -115,7 +115,7 @@ def fetch_site_documents(database_url: str) -> list[dict]:
docs.append(d) docs.append(d)
# --- خدمات --- # --- خدمات ---
for row in _fetch_rows(dsn, "SELECT title, desc FROM services ORDER BY position"): for row in _fetch_rows(dsn, 'SELECT title, "desc" FROM services ORDER BY position'):
d = _doc( d = _doc(
f"خدمت «{_clean(row['title'])}»: {_clean(row['desc'])}", f"خدمت «{_clean(row['title'])}»: {_clean(row['desc'])}",
"service", _clean(row["title"]), "/services", "service", _clean(row["title"]), "/services",