gemeni endpoints

This commit is contained in:
KasaNick
2026-01-24 06:33:29 -05:00
parent d6471afab2
commit c46ec76027
7 changed files with 134 additions and 44 deletions

View File

@@ -0,0 +1,62 @@
from flask import Blueprint, request, jsonify
from src.rag.gemeni import GeminiClient
from src.gemini import ask_gemini_with_rag
gemini_bp = Blueprint('gemini', __name__)
brain = None
def get_brain():
global brain
if brain is None:
brain = GeminiClient()
return brain
@gemini_bp.route('/ask', methods=['POST'])
def ask():
data = request.json
prompt = data.get("prompt")
context = data.get("context", "")
if not prompt:
return jsonify({"error": "No prompt provided"}), 400
try:
client = get_brain()
response = client.ask(prompt, context)
return jsonify({
"status": "success",
"reply": response
})
except Exception as e:
return jsonify({
"status": "error",
"message": str(e)
}), 500
@gemini_bp.route('/rag', methods=['POST'])
def rag():
data = request.json
prompt = data.get("prompt")
category = data.get("category")
if not prompt:
return jsonify({"error": "No prompt provided"}), 400
try:
response = ask_gemini_with_rag(prompt, category=category)
return jsonify({
"status": "success",
"reply": response
})
except Exception as e:
return jsonify({
"status": "error",
"message": str(e)
}), 500
@gemini_bp.route('/vision', methods=['POST'])
def vision():
return jsonify({
"status": "error",
"message": "Vision endpoint not yet implemented"
}), 501