38 lines
830 B
Python
38 lines
830 B
Python
import io
|
|
import os
|
|
import time
|
|
from anthropic import Anthropic
|
|
from flask import Flask, request, redirect, session, url_for
|
|
from flask_cors import CORS
|
|
from dotenv import load_dotenv, find_dotenv
|
|
|
|
load_dotenv(find_dotenv())
|
|
|
|
client = Anthropic(
|
|
api_key=os.environ.get("ANTHROPIC_API_KEY"),
|
|
)
|
|
|
|
app = Flask(__name__)
|
|
CORS(app)
|
|
|
|
@app.route('/ask-claude', methods=['POST'])
|
|
def ask_claude():
|
|
user_text = request.get_data(as_text=True)
|
|
message = client.messages.create(
|
|
max_tokens=1024,
|
|
messages=[
|
|
{
|
|
"role": "user",
|
|
"content": user_text,
|
|
}
|
|
],
|
|
model="claude-3-5-haiku-latest",
|
|
)
|
|
response_text = ""
|
|
for t in message.content:
|
|
response_text += t.text
|
|
return response_text
|
|
|
|
if __name__ == '__main__':
|
|
app.run()
|