hanoch.rahimi@gmail commited on
Commit
749a763
·
1 Parent(s): 9376584

use also env variables

Browse files
Files changed (3) hide show
  1. app.py +2 -2
  2. openai_utils.py +9 -12
  3. utils.py +24 -4
app.py CHANGED
@@ -33,7 +33,7 @@ COUNTRIES_FN="data/countries.csv"
33
  country_geo = pd.read_csv(COUNTRIES_FN)
34
 
35
  st.session_state.index = utils.init_pinecone()
36
- st.session_state.results = []
37
 
38
  carddict = {
39
  "name": [],
@@ -165,7 +165,7 @@ def run_query(query, report_type, top_k , regions, countries, is_debug, index_na
165
  #descriptions = "\n".join([f"Description of company \"{res['name']}\": {res['data']['Summary']}.\n" for res in results[:20] if 'Summary' in res['data']])
166
 
167
  m_text = oai.call_openai(query, engine=openai_model, temp=0, top_p=1.0)
168
- results = st.session_state.results
169
  m_text
170
  st.session_state.messages.append({"role": "user", "content": query})
171
  st.session_state.messages.append({"role": "system", "content": m_text})
 
33
  country_geo = pd.read_csv(COUNTRIES_FN)
34
 
35
  st.session_state.index = utils.init_pinecone()
36
+ st.session_state.db_search_results = []
37
 
38
  carddict = {
39
  "name": [],
 
165
  #descriptions = "\n".join([f"Description of company \"{res['name']}\": {res['data']['Summary']}.\n" for res in results[:20] if 'Summary' in res['data']])
166
 
167
  m_text = oai.call_openai(query, engine=openai_model, temp=0, top_p=1.0)
168
+ results = st.session_state.db_search_results
169
  m_text
170
  st.session_state.messages.append({"role": "user", "content": query})
171
  st.session_state.messages.append({"role": "system", "content": m_text})
openai_utils.py CHANGED
@@ -8,18 +8,11 @@ import streamlit as st
8
 
9
  import utils
10
 
11
- OPENAI_API_KEY = st.secrets["OPENAI_API_KEY"] # app.pinecone.io
12
- OPENAI_ORGANIZATION_ID = st.secrets["OPENAI_ORGANIZATION_ID"]
13
-
14
-
15
- headers = {"Content-Type": "application/json",
16
- "Authorization": f"Bearer {OPENAI_API_KEY}"
17
- }
18
 
19
  SEED = 42
20
 
21
  def get_client():
22
- return openai.OpenAI(api_key = OPENAI_API_KEY,organization=OPENAI_ORGANIZATION_ID)
23
 
24
  def getListOfCompanies(query, filters = {}):
25
  country_filters = filters['country'] if 'country' in filters else st.session_state.country
@@ -72,10 +65,14 @@ def wait_for_response(thread, run):
72
  if tool_call.function.name =="getListOfCompanies":
73
  try:
74
  args = json.loads(tool_call.function.arguments)
75
- print(f"Processing tool_call {tool_call.id}. Calling 'getListOfCompanies with args: {args}" )
76
- res = getListOfCompanies(args['query'], json.loads(args['filters']))
77
- if len(res)>0:
78
- outputs[tool_call.id] = res
 
 
 
 
79
  except Exception as e:
80
  print(f"Error calling tools, {str(e)}")
81
  traceback.print_exc()
 
8
 
9
  import utils
10
 
 
 
 
 
 
 
 
11
 
12
  SEED = 42
13
 
14
  def get_client():
15
+ return openai.OpenAI(api_key = utils.OPENAI_API_KEY,organization=utils.OPENAI_ORGANIZATION_ID)
16
 
17
  def getListOfCompanies(query, filters = {}):
18
  country_filters = filters['country'] if 'country' in filters else st.session_state.country
 
65
  if tool_call.function.name =="getListOfCompanies":
66
  try:
67
  args = json.loads(tool_call.function.arguments)
68
+ res = ''
69
+ if 'query' in args:
70
+ print(f"Processing tool_call {tool_call.id}. Calling 'getListOfCompanies with args: {args}" )
71
+ search_filters = json.loads(args['filters']) if 'filters' in args else []
72
+ res = getListOfCompanies(args['query'], search_filters)
73
+
74
+
75
+ outputs[tool_call.id] = res
76
  except Exception as e:
77
  print(f"Error calling tools, {str(e)}")
78
  traceback.print_exc()
utils.py CHANGED
@@ -1,11 +1,34 @@
1
  import json
2
 
3
  import pandas as pd
 
 
 
 
4
  import pinecone
5
  import psycopg2
6
  from psycopg2 import extras
7
  import streamlit as st
8
- import openai
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9
 
10
  # def create_connection():
11
  # host = st.secrets["RAIZED_DB_HOST"]
@@ -24,9 +47,6 @@ import openai
24
 
25
  ## Pinecone
26
 
27
- PINECONE_KEY = st.secrets["PINECONE_API_KEY"] # app.pinecone.io
28
- PINE_CONE_ENVIRONMENT = st.secrets["PINE_CONE_ENVIRONMENT"] # app.pinecone.io
29
-
30
  @st.cache_resource
31
  def init_pinecone():
32
  pinecone.init(api_key=PINECONE_KEY, environment=PINE_CONE_ENVIRONMENT) # get a free api key from app.pinecone.io
 
1
  import json
2
 
3
  import pandas as pd
4
+ import os
5
+
6
+ # from google.cloud import secretmanager
7
+ import openai
8
  import pinecone
9
  import psycopg2
10
  from psycopg2 import extras
11
  import streamlit as st
12
+
13
+
14
+ # gcp_client = secretmanager.SecretManagerServiceClient()
15
+ # response = gcp_client.access_secret_version(request={"name": version.name})
16
+
17
+ def get_variable(name):
18
+ return os.getenv(name, st.secrets[name])
19
+
20
+ OPENAI_API_KEY = get_variable("OPENAI_API_KEY") # app.pinecone.io
21
+ OPENAI_ORGANIZATION_ID = get_variable("OPENAI_ORGANIZATION_ID")
22
+
23
+ PINECONE_KEY = get_variable("PINECONE_API_KEY") # app.pinecone.io
24
+ PINE_CONE_ENVIRONMENT = get_variable("PINE_CONE_ENVIRONMENT") # app.pinecone.io
25
+
26
+ # OPENAI_API_KEY = st.secrets["OPENAI_API_KEY"] # app.pinecone.io
27
+ # OPENAI_ORGANIZATION_ID = st.secrets["OPENAI_ORGANIZATION_ID"]
28
+
29
+ # PINECONE_KEY = st.secrets["PINECONE_API_KEY"] # app.pinecone.io
30
+ # PINE_CONE_ENVIRONMENT = st.secrets["PINE_CONE_ENVIRONMENT"] # app.pinecone.io
31
+
32
 
33
  # def create_connection():
34
  # host = st.secrets["RAIZED_DB_HOST"]
 
47
 
48
  ## Pinecone
49
 
 
 
 
50
  @st.cache_resource
51
  def init_pinecone():
52
  pinecone.init(api_key=PINECONE_KEY, environment=PINE_CONE_ENVIRONMENT) # get a free api key from app.pinecone.io