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()