eyuvaraj commited on
Commit
4760220
·
verified ·
1 Parent(s): 1f80ce4

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +10 -10
app.py CHANGED
@@ -1,9 +1,9 @@
1
  import streamlit as st
2
  from openai import OpenAI
 
3
  import requests
4
  from prompts import SYSTEM_PROMPT
5
  import time
6
- import os
7
 
8
 
9
  def setup_page():
@@ -20,13 +20,12 @@ def initialize_session_state():
20
  """Initialize Streamlit session state variables."""
21
  if "messages" not in st.session_state:
22
  st.session_state.messages = []
23
- if "ollama_server" not in st.session_state:
24
- st.session_state.ollama_server = "http://127.0.0.1:11434"
25
 
26
 
27
  def get_ollama_client():
28
  """Initialize the OpenAI client for Ollama."""
29
- base_url = f"{st.session_state.ollama_server}/v1/"
 
30
  return OpenAI(base_url=base_url, api_key="ollama")
31
 
32
 
@@ -44,9 +43,9 @@ def chat_completion(client, messages, model):
44
  return response.choices[0].message.content
45
 
46
 
47
- def get_models():
48
  """Fetch available models from the Ollama server."""
49
- url = f"{st.session_state.ollama_server}/api/tags"
50
  try:
51
  response = requests.get(url)
52
  response.raise_for_status()
@@ -97,14 +96,14 @@ def main():
97
  st.title("Ollama Chatbot")
98
  st.sidebar.title("Settings")
99
 
100
- # Display the hardcoded Ollama server URL
101
- st.sidebar.text(f"Ollama Server: {st.session_state.ollama_server}")
102
 
103
  # Initialize the OpenAI client
104
  client = get_ollama_client()
105
 
106
  # Fetch available models
107
- models = get_models()
108
  if not models:
109
  st.error("No models available. Please check the server connection.")
110
  return
@@ -117,7 +116,8 @@ def main():
117
  update = st.sidebar.button("Update settings", use_container_width=True)
118
 
119
  if update:
120
- # Update the system prompt
 
121
  SYSTEM_PROMPT = update_prompt
122
  if len(st.session_state.messages) == 0:
123
  st.session_state.messages.insert(0, create_message("system", SYSTEM_PROMPT))
 
1
  import streamlit as st
2
  from openai import OpenAI
3
+ from config import config
4
  import requests
5
  from prompts import SYSTEM_PROMPT
6
  import time
 
7
 
8
 
9
  def setup_page():
 
20
  """Initialize Streamlit session state variables."""
21
  if "messages" not in st.session_state:
22
  st.session_state.messages = []
 
 
23
 
24
 
25
  def get_ollama_client():
26
  """Initialize the OpenAI client for Ollama."""
27
+ ollama_server = config.OLLAMA_SERVER
28
+ base_url = f"{ollama_server}/v1/"
29
  return OpenAI(base_url=base_url, api_key="ollama")
30
 
31
 
 
43
  return response.choices[0].message.content
44
 
45
 
46
+ def get_models(ollama_server):
47
  """Fetch available models from the Ollama server."""
48
+ url = f"{ollama_server}/api/tags"
49
  try:
50
  response = requests.get(url)
51
  response.raise_for_status()
 
96
  st.title("Ollama Chatbot")
97
  st.sidebar.title("Settings")
98
 
99
+ # Ollama Server configuration
100
+ ollama_server = st.sidebar.text_input("Ollama Server", value=config.OLLAMA_SERVER)
101
 
102
  # Initialize the OpenAI client
103
  client = get_ollama_client()
104
 
105
  # Fetch available models
106
+ models = get_models(ollama_server)
107
  if not models:
108
  st.error("No models available. Please check the server connection.")
109
  return
 
116
  update = st.sidebar.button("Update settings", use_container_width=True)
117
 
118
  if update:
119
+ # Update configuration and system prompt
120
+ config.OLLAMA_SERVER = ollama_server
121
  SYSTEM_PROMPT = update_prompt
122
  if len(st.session_state.messages) == 0:
123
  st.session_state.messages.insert(0, create_message("system", SYSTEM_PROMPT))