| import streamlit as st |
| import requests |
| import os |
|
|
| def deepseek_chat(prompt): |
| response = requests.post( |
| "https://api.siliconflow.cn/v1/chat/completions", |
| headers={"Authorization": f"Bearer {os.getenv('DEEPSEEK_API_KEY')}"}, |
| json={ |
| "model": "deepseek-ai/DeepSeek-R1", |
| "messages": [{"role": "user", "content": prompt}], |
| "temperature": 0.7 |
| } |
| ) |
| return response.json()["choices"][0]["message"]["content"] |
|
|
| st.title("DeepSeek Chat") |
| user_input = st.chat_input("Ask something...") |
|
|
| if "messages" not in st.session_state: |
| st.session_state.messages = [] |
|
|
| for msg in st.session_state.messages: |
| st.chat_message(msg["role"]).write(msg["content"]) |
|
|
| if user_input: |
| st.session_state.messages.append({"role": "user", "content": user_input}) |
| st.chat_message("user").write(user_input) |
| |
| response = deepseek_chat(user_input) |
| st.session_state.messages.append({"role": "assistant", "content": response}) |
| st.chat_message("assistant").write(response) |
|
|