Spaces:
Sleeping
Sleeping
File size: 1,467 Bytes
e43cdcf c9319f3 e43cdcf 01cd63d e43cdcf c9319f3 e43cdcf |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
from flask import Flask, request, jsonify
from hugchat import hugchat
from hugchat.login import Login
import os
app = Flask(__name__)
# Get Hugging Face credentials from environment variables
email = os.getenv('HF_EMAIL')
password = os.getenv('HF_PASS')
@app.route("/")
def hello():
return "hello 🤗, Welcome to Sema AI Chat Service."
# Flask route to handle incoming chat requests
@app.route('/chat', methods=['POST'])
def chat():
# Get JSON data from the POST request
data = request.json
prompt = data.get('prompt')
email = data.get('email')
password = data.get('password')
if not (prompt and email and password):
return jsonify({"error": "Missing prompt, email, or password"}), 400
# Generate the response
response = generate_response(prompt, email, password)
# Return the response as JSON
return jsonify({"response": response})
# Function for generating LLM response
def generate_response(prompt_input, email, passwd):
# Hugging Face Login
sign = Login(email, passwd)
cookies = sign.login()
# Create ChatBot
chatbot = hugchat.ChatBot(cookies=cookies.get_dict())
# Simple dialogue structure
string_dialogue = "You are a helpful assistant."
string_dialogue += f"\n\nUser: {prompt_input}\n\nAssistant: "
# Generate and return the response
return chatbot.chat(string_dialogue)
if __name__ == '__main__':
app.run(debug=True)
|