# Heroku側のコード from flask import Flask, request, abort from linebot import LineBotApi, WebhookHandler from linebot.exceptions import InvalidSignatureError from linebot.models import MessageEvent, TextMessage, TextSendMessage import requests app = Flask(__name__) # LINE Botの設定 LINE_CHANNEL_ACCESS_TOKEN = 'YOUR_CHANNEL_ACCESS_TOKEN' LINE_CHANNEL_SECRET = 'YOUR_CHANNEL_SECRET' line_bot_api = LineBotApi(LINE_CHANNEL_ACCESS_TOKEN) handler = WebhookHandler(LINE_CHANNEL_SECRET) # Hugging Face Spaces APIのエンドポイントURL(自分で設定する必要があります) HF_SPACES_API_URL = "https://your-huggingface-spaces-url" @app.route("/callback", methods=['POST']) def callback(): signature = request.headers['X-Line-Signature'] body = request.get_data(as_text=True) try: handler.handle(body, signature) except InvalidSignatureError: abort(400) return 'OK' @handler.add(MessageEvent, message=TextMessage) def handle_message(event): input_text = event.message.text # Hugging Face SpacesのAPIにメッセージを転送 response = requests.post(HF_SPACES_API_URL, json={"input": input_text}) if response.status_code == 200: reply_message = response.json()['output'] line_bot_api.reply_message(event.reply_token, TextSendMessage(text=reply_message)) else: line_bot_api.reply_message(event.reply_token, TextSendMessage(text="エラーが発生しました")) if __name__ == "__main__": app.run()