added a feature that was on todo list + fixed a couple of other things
This commit is contained in:
1 parent
7d3a8da4d4
commit
71be6f5c55
7 files changed
+14
-32
No files matched your search
@@ -1,2 +1,2 @@
|
|||||||
DISCORD_TOKEN=YOUR_DISCORD_TOKEN
|
DISCORD_TOKEN=YOUR_DISCORD_TOKEN
|
||||||
GEMINI_API_KEY=YOUR_GEMINI_API_KEY
|
GEMINI_API_KEY=YOUR_GEMINI_API_TOKEN
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
.venv/
|
||||||
@@ -34,7 +34,7 @@ apt update && apt install git python3 python3-pip -y
|
|||||||
```
|
```
|
||||||
git clone https://github.com/timurtom/DiscordAIBot.git
|
git clone https://github.com/timurtom/DiscordAIBot.git
|
||||||
cd DiscordAIBot
|
cd DiscordAIBot
|
||||||
pip install -r requirements.txt
|
pip install discord.py google-genai python-dotenv
|
||||||
```
|
```
|
||||||
В .env файл вставьте API ключи
|
В .env файл вставьте API ключи
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -37,7 +37,7 @@ Clone the repository and install all required libraries:
|
|||||||
```bash
|
```bash
|
||||||
git clone https://github.com/timurtom/DiscordAIBot.git
|
git clone https://github.com/timurtom/DiscordAIBot.git
|
||||||
cd DiscordAIBot
|
cd DiscordAIBot
|
||||||
pip install -r requirements.txt
|
pip install discord.py google-genai python-dotenv
|
||||||
```
|
```
|
||||||
|
|
||||||
Insert your API keys into the `.env` file.
|
Insert your API keys into the `.env` file.
|
||||||
|
|||||||
@@ -10,6 +10,13 @@ load_dotenv()
|
|||||||
DISCORD_TOKEN = os.getenv("DISCORD_TOKEN")
|
DISCORD_TOKEN = os.getenv("DISCORD_TOKEN")
|
||||||
GEMINI_API_KEY = os.getenv("GEMINI_API_KEY")
|
GEMINI_API_KEY = os.getenv("GEMINI_API_KEY")
|
||||||
|
|
||||||
|
# Читаем системный промпт из отдельного файла
|
||||||
|
try:
|
||||||
|
with open("system_prompt.txt", "r", encoding="utf-8") as f:
|
||||||
|
SYSTEM_PROMPT = f.read().strip()
|
||||||
|
except FileNotFoundError:
|
||||||
|
SYSTEM_PROMPT = "Ты помощник."
|
||||||
|
|
||||||
# Инициализируем клиент Gemini
|
# Инициализируем клиент Gemini
|
||||||
ai_client = genai.Client(api_key=GEMINI_API_KEY)
|
ai_client = genai.Client(api_key=GEMINI_API_KEY)
|
||||||
|
|
||||||
@@ -40,17 +47,12 @@ async def on_message(message):
|
|||||||
|
|
||||||
async with message.channel.typing():
|
async with message.channel.typing():
|
||||||
try:
|
try:
|
||||||
# Передаем системное правило через config
|
# Передаем загруженный из файла системный промпт
|
||||||
response = ai_client.models.generate_content(
|
response = ai_client.models.generate_content(
|
||||||
model="gemini-2.5-flash",
|
model="gemini-2.5-flash",
|
||||||
contents=prompt,
|
contents=prompt,
|
||||||
config=types.GenerateContentConfig(
|
config=types.GenerateContentConfig(
|
||||||
system_instruction=(
|
system_instruction=SYSTEM_PROMPT
|
||||||
"Ты дискорд-бот. Твоё главное и нерушимое правило: "
|
|
||||||
"НИКОГДА И НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ НЕ ПИШИ КОД. "
|
|
||||||
"Если пользователь просит написать код, скрипт, программу или отредактировать код, "
|
|
||||||
"откажи ему или объясни всё простыми словами без использования блоков кода и синтаксиса."
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -1,22 +0,0 @@
|
|||||||
attrs==26.1.0
|
|
||||||
certifi==2026.10.23
|
|
||||||
cffi==2.1.1
|
|
||||||
cryptography==50.0.2
|
|
||||||
cupshelpers==1.0
|
|
||||||
dbus-python==1.5.1
|
|
||||||
filelock==4.0.10
|
|
||||||
nftables==0.1
|
|
||||||
packaging==26.3
|
|
||||||
psutil==7.2.2
|
|
||||||
pycairo==1.29.2
|
|
||||||
pycparser==3.12
|
|
||||||
pycups==2.0.4
|
|
||||||
pygdbmi==0.11.0.0
|
|
||||||
PyGObject==3.58.1
|
|
||||||
sentry-sdk==2.73.0
|
|
||||||
smbus==1.1
|
|
||||||
TBB @ file:///build/onetbb/src/build/python/python_build
|
|
||||||
ufw==0.36.2
|
|
||||||
urllib3==2.8.0
|
|
||||||
VapourSynth==81
|
|
||||||
wheel==0.48.0
|
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
Ты дискорд-бот. Твоё главное и нерушимое правило: НИКОГДА И НИ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ НЕ ПИШИ КОД. Если пользователь просит написать код, скрипт, программу или отредактировать код, откажи ему или объясни всё простыми словами без использования блоков кода и синтаксиса.
|
||||||
Reference in new issue
Block a user