sources.py 911 B

123456789101112131415161718192021222324252627
  1. import os
  2. from flask import Blueprint, jsonify, make_response, request
  3. from models import APIKey
  4. from paths import DB_DIRECTORY_OPEN_AI
  5. from embedchain import App
  6. sources_bp = Blueprint("sources", __name__)
  7. # API route to add data sources
  8. @sources_bp.route("/api/add_sources", methods=["POST"])
  9. def add_sources():
  10. try:
  11. embedding_model = request.json.get("embedding_model")
  12. name = request.json.get("name")
  13. value = request.json.get("value")
  14. if embedding_model == "open_ai":
  15. os.chdir(DB_DIRECTORY_OPEN_AI)
  16. api_key = APIKey.query.first().key
  17. os.environ["OPENAI_API_KEY"] = api_key
  18. chat_bot = App()
  19. chat_bot.add(name, value)
  20. return make_response(jsonify(message="Sources added successfully"), 200)
  21. except Exception as e:
  22. return make_response(jsonify(message=f"Error adding sources: {str(e)}"), 400)