AI-Discord-Bot/ai.py

35 lines
933 B
Python

# ai.py
import requests
import os
from dotenv import load_dotenv
from personality import load_persona
load_dotenv()
AI_URL = os.getenv("OLLAMA_API_URL")
def get_ai_response(user_prompt):
persona = load_persona()
full_prompt = (
f"You are {persona['name']}.\n"
f"{persona['prompt_inject']}\n"
f"Never break character.\n\n"
f"User: {user_prompt}\n"
f"{persona['name']}:"
)
payload = {
"model": "mistral:7b", # adjust if you use a different one later
"prompt": full_prompt,
"stream": False
}
try:
response = requests.post(AI_URL, json=payload)
if response.status_code == 200:
result = response.json()
return result.get("response", "[No response]")
else:
return f"[Error {response.status_code}] {response.text}"
except Exception as e:
return f"[Request failed] {str(e)}"