File size: 2,210 Bytes
141c807
9c4ecbb
141c807
 
 
8ff3f24
 
141c807
9c4ecbb
141c807
 
8ff3f24
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
35b7d71
8ff3f24
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
---
title: MistralApp
emoji: 💬
colorFrom: yellow
colorTo: purple
sdk: docker
app_port: 7860
pinned: false
license: apache-2.0
---

# Mistral AI 多模态聊天助手

一个基于[Flask](https://flask.palletsprojects.com/)和[Mistral AI API](https://docs.mistral.ai/api/)的多模态聊天应用,支持文本和图像分析。

## 特性

- **多模态对话**: 支持文本和图像的混合输入
- **直接粘贴图片**: 可以使用`Ctrl+V`直接从剪贴板粘贴图片 ✨
- **现代化UI**: 友好的聊天界面,类似于现代消息应用
- **自定义系统提示**: 可以根据需要自定义AI助手的行为
- **响应式设计**: 适配不同的屏幕尺寸

## 使用方法

### 本地运行

1. 设置环境并安装依赖:
   ```bash
   pip install -r requirements.txt
   ```

2. 设置Mistral API密钥:
   ```bash
   export MISTRAL_API_KEY=your_api_key_here
   ```

3. 运行应用:
   ```bash
   python flask_app.py
   ```

4. 在浏览器访问:
   ```
   http://localhost:5000
   ```

### Docker部署

#### 本地构建和运行

1. 创建包含API密钥的.env文件:
   ```bash
   echo "MISTRAL_API_KEY=your_mistral_api_key" > .env
   ```

2. 构建Docker镜像:
   ```bash
   docker build -t mistralapp .
   ```

3. 运行Docker容器:
  
   ```bash
   docker run -p 7860:7860 -e MISTRAL_API_KEY=your_api_key_here mistralapp
   ```

4. 在浏览器访问:
   ```
   http://localhost:7860
   ```

### Hugging Face Spaces部署

此应用已配置为可以直接在Hugging Face Spaces上部署:

1. 在Hugging Face Spaces创建一个新的Space
2. 选择Docker作为SDK并设置app_port为7860
3. 在Space设置中添加Repository Secret:
   - 名称:`MISTRAL_API_KEY`
   - 值:您的Mistral API密钥
4. 将代码推送到该Space的仓库
5. Hugging Face将自动构建Docker镜像并启动应用

## 技术栈

- **后端**: Flask, Python, Mistral AI API
- **前端**: HTML, CSS, JavaScript
- **图像处理**: Pillow
- **部署**: Docker, Gunicorn

## 版本说明

项目提供了多个版本:

- **Flask版本** (`flask_app.py`): 支持直接粘贴图片,提供更现代的UI
- **Docker部署版本**: 使用Dockerfile配置,适合在Hugging Face Spaces上运行