Запрос по товару
import openai
import requests
from bs4 import BeautifulSoup
from flask import Flask, request, jsonify
app = Flask(__name__)
# Настройки OpenAI API
OPENAI_API_KEY = "your-openai-api-key"
openai.api_key = OPENAI_API_KEY
# Функция для парсинга сайта Amrita
AMRITA_URL = "https://amrita.net.ua/"
def scrape_amrita_products():
response = requests.get(AMRITA_URL)
soup = BeautifulSoup(response.text, "html.parser")
products = []
for product in soup.find_all("div", class_="product-item"): # Укажите точный класс
title = product.find("h3").text.strip() if product.find("h3") else ""
description = product.find("p").text.strip() if product.find("p") else "Описание отсутствует"
link = product.find("a")["href"] if product.find("a") else ""
products.append({
"title": title,
"description": description,
"link": AMRITA_URL + link
})
return products
# Получаем данные с сайта Amrita
amrita_products = scrape_amrita_products()
def get_amrita_recommendation(user_input):
prompt = f"""
Ты эксперт по продукции Amrita. Пользователь ввел запрос: "{user_input}".
Твоя задача:
- Найти подходящие товары на сайте Amrita (https://amrita.net.ua/) по ключевым словам (например, "похудение", "зрение").
- Для каждого найденного товара:
- Указать название
- Описание
- Дать ссылку на продукт
- НЕ ВЫДУМЫВАТЬ товары – использовать ТОЛЬКО из списка продуктов, полученных с сайта!
Список товаров Amrita:
{amrita_products}
"""
response = openai.ChatCompletion.create(
model="gpt-4",
messages=[{"role": "system", "content": "Ты помощник по продукции Amrita и ищешь товары только на сайте Amrita."},
{"role": "user", "content": prompt}],
temperature=0.5
)
return response["choices"][0]["message"]["content"]
@app.route("/chat", methods=["POST"])
def chat():
data = request.json
user_query = data.get("message", "")
if not user_query:
return jsonify({"error": "Пустой запрос"}), 400
recommendation = get_amrita_recommendation(user_query)
return jsonify({"response": recommendation})
if __name__ == "__main__":
app.run(host="0.0.0.0", port=5000, debug=True)