BuckLakeAI / app.py
parkerjj's picture
First Commit for test Hugging face platform
d794995
raw
history blame
1.45 kB
import requests
import streamlit as st
from flask import Flask, request, jsonify
import threading
# Flask 部分
flask_app = Flask(__name__)
@flask_app.route('/predict', methods=['POST'])
def predict():
data = request.get_json()
if not data or 'input' not in data:
return jsonify({'error': 'Invalid input'}), 400
input_text = data['input']
# 模拟模型预测
result = {"prediction": f"Predicted for: {input_text}"}
return jsonify(result)
def run_flask():
flask_app.run(port=5000, debug=False)
# Streamlit 部分
st.title("AI Model API Interface")
st.write("输入文本,获取模型预测结果。")
# 用户输入
user_input = st.text_area("请输入文本:")
if st.button("提交"):
if user_input.strip():
with st.spinner("正在预测..."):
try:
api_url = "http://127.0.0.1:5000/predict" # 内部调用 Flask
response = requests.post(api_url, json={"input": user_input})
if response.status_code == 200:
prediction = response.json()
st.success(f"预测结果: {prediction}")
else:
st.error(f"错误: {response.text}")
except Exception as e:
st.error(f"请求失败: {e}")
else:
st.warning("请输入文本!")
# 使用线程运行 Flask
if __name__ == "__main__":
threading.Thread(target=run_flask).start()