フロントエンドからデータを受け取るところを記述する
jsonをpostすると、jsonのレスポンスが返ってくる
from flask import Flask, request, Response import json app = Flask(__name__) @app.route("/chat", methods=["POST"]) def chat(): try: data = request.get_json() user_id = data.get("user_id") message = data.get("message") # ここで認証チェック、DBアクセス、AIモデルの呼び出しなどを行う # ここではダミーの応答を返す ai_reply = f"ユーザ({user_id})のメッセージを受け取りました: {message}" response_json = json.dumps({"reply": ai_reply}, ensure_ascii=False) return Response(response_json, content_type="application/json; charset=utf-8") except Exception as e: error_json = json.dumps({"error": str(e)}, ensure_ascii=False) return Response(error_json, status=400, content_type="application/json; charset=utf-8") if __name__ == "__main__": app.run(debug=True)
$ curl -X POST http://127.0.0.1:5000/chat -H “Content-Type: application/json” -d ‘{“user_id”: “12345”, “message”: “おはよう!”}’
{“reply”: “ユーザ(12345)のメッセージを受け取りました: おはよう!”}
この chat() の中で 以下も書いていく。
– 認証チェックを追加
– DBにユーザーの入力を保存
– OpenAI API や HuggingFace API を呼んで応答を生成
– 生成した応答をDBに保存して返却