Abobasnik commited on
Commit
9e51f4f
·
verified ·
1 Parent(s): ee3b0bb

Update src/streamlit_app.py

Browse files
Files changed (1) hide show
  1. src/streamlit_app.py +18 -47
src/streamlit_app.py CHANGED
@@ -3,50 +3,21 @@ import google.generativeai as genai
3
  from openai import OpenAI
4
  import os
5
 
6
- # Подключаем ключи из секретов HF
7
- OPENAI_KEY = os.environ.get("OPENAI_API_KEY")
8
- GEMINI_KEY = os.environ.get("GEMINI_API_KEY")
9
-
10
- # Настройка моделей
11
- client = OpenAI(api_key=OPENAI_KEY)
12
- genai.configure(api_key=GEMINI_KEY)
13
- gemini_model = genai.GenerativeModel('gemini-1.5-pro') # Pro версия мощнее!
14
-
15
- st.title("🌌 Синтез Разума: Gemini 3 Pro + GPT-4o")
16
-
17
- query = st.text_input("Введите ваш запрос:", placeholder="Напиши код или реши задачу...")
18
-
19
- if st.button("Запустить Гибрид"):
20
- with st.spinner("Происходит слияние интеллектов..."):
21
- try:
22
- # ШАГ 1: GPT создает фундамент и логику
23
- gpt_res = client.chat.completions.create(
24
- model="gpt-4o-mini",
25
- messages=[{"role": "user", "content": query}]
26
- )
27
- base_content = gpt_res.choices[0].message.content
28
-
29
- # ШАГ 2: Gemini анализирует ответ GPT, расширяет его и добавляет детали
30
- prompt = f"""
31
- Изначальный запрос: {query}
32
- Базовый ответ от GPT: {base_content}
33
-
34
- Твоя задача — выступить в роли супер-интеллекта.
35
- Возьми за основу ответ GPT, исправь в нем любые неточности, добавь глубокие детали,
36
- которые знает только Gemini, и выдай финальный, идеальный вариант.
37
- """
38
-
39
- final_res = gemini_model.generate_content(prompt)
40
-
41
- # ВЫВОД РЕЗУЛЬТАТА
42
- st.markdown("### 🤖 Итоговый ответ Гибрида:")
43
- st.write(final_res.text)
44
-
45
- with st.expander("Посмотреть, как они работали (Логи)"):
46
- st.subheader("Черновик от GPT:")
47
- st.write(base_content)
48
-
49
- except Exception as e:
50
- st.error(f"Ошибка в системе: {e}")
51
-
52
- # Добавляем файл requirements.txt, чтобы всё заработало
 
3
  from openai import OpenAI
4
  import os
5
 
6
+ # Пробуем достать ключи двумя способами (Secrets или Streamlit Secrets)
7
+ OPENAI_KEY = os.environ.get("OPENAI_API_KEY") or st.secrets.get("OPENAI_API_KEY")
8
+ GEMINI_KEY = os.environ.get("GEMINI_API_KEY") or st.secrets.get("GEMINI_API_KEY")
9
+
10
+ # Проверка на наличие ключей, чтобы не вылетала страшная ошибка
11
+ if not OPENAI_KEY or not GEMINI_KEY:
12
+ st.error("❌ Ошибка: Ключи API не найдены в Secrets!")
13
+ st.info("Перейди в Settings -> Variables and secrets и добавь OPENAI_API_KEY и GEMINI_API_KEY")
14
+ st.stop() # Останавливаем выполнение, если ключей нет
15
+
16
+ # Инициализация клиентов
17
+ try:
18
+ client = OpenAI(api_key=OPENAI_KEY)
19
+ genai.configure(api_key=GEMINI_KEY)
20
+ gemini_model = genai.GenerativeModel('gemini-1.5-pro')
21
+ except Exception as e:
22
+ st.error(f"Ошибка инициализации: {e}")
23
+