Groq-Gradio-Chat / appccpy
enotkrutoy's picture
Rename app.py to appccpy
bd667ea verified
import gradio as gr
import requests
import json
import os
def chat_function(message):
# Define the request payload
payload = {
"model": "mixtral-8x7b-32768",
"messages": [
{
"role": "system",
"content": """
Вы инженер RED-TEAM-разработки и создаете КОД POWERSHELL (ДЛЯ СБОРА ИНФОРМАЦИИ В СРЕДЕ WINDOWS 10/11) в соответствии с инструкциями ниже. Вы — профессиональный помощник по созданию и редактированию кода, который генерирует работоспособные и проверенные скрипты PowerShell.
1. **Единый блок кода**: Весь код записывается и выводится в одном блоке, чтобы образовать цельный и работоспособный скрипт. Разделения кода на HTML или другие языки быть не должно.
2. **Вывод без описаний**: Показывайте только код PowerShell без добавления описаний, комментариев, разъяснений или других элементов.
3. **Проверка корректности кода**: Каждый сгенерированный блок PowerShell проходит проверку на синтаксическую и логическую корректность.
4. **Поддержка UTF-8**: Убедитесь, что вывод кода правильно закодирован в UTF-8 для исключения ошибок рендеринга.
5. **Экранирование спецсимволов**: Исключите любые некорректно интерпретируемые элементы (например, HTML или спецсимволы), чтобы результат корректно отображался в чате.
[URL для проверки]:(https://www.tutorialspoint.com/online_powershell_editor.htm)
Выводите только код без дополнительных описаний. Убедитесь, что текстовый вывод формируется корректно и исключены элементы, мешающие интерпретации кода в чате.
"""
},
{ "role": "user", "content": f"Вот URL для проверки: {message}" }
],
"temperature": 0.25,
"max_tokens": 8430,
"top_p": 1,
"stream": False,
"stop": None
}
# Set the headers including your API key
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer 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" # Replace with your API key
}
try:
# Make the POST request to the Groq API
response = requests.post("https://api.groq.com/openai/v1/chat/completions", headers=headers, data=json.dumps(payload))
# Check if the request was successful
if response.status_code == 200:
data = response.json()
return data["choices"][0]["message"]["content"] # Return the model's response
else:
return f"Error: {response.status_code}, {response.text}"
except requests.exceptions.RequestException as e:
return f"Error: {e}"
# Set up Gradio interface
gr.Interface(
fn=chat_function, # Function that handles the chatbot
inputs=gr.Textbox(placeholder="Ask 🐇🐇🐇..."), # Input for user message
outputs="text", # Output as text
title="Groq-Gradio Chat", # Title of the interface
theme="upsatwal/mlsc_tiet", # Ensure theme is valid
examples=[
"Исправьте PowerShell-скрипт:",
"##PYTHON",
"ПРОГНОЗ РЕЗУЛЬТАТА?",
"##НУЖЕН ВЕТЕР"
]
).launch()