AFischer1985 commited on
Commit
432dbc1
1 Parent(s): 39ea8d1

Update run.py

Browse files
Files changed (1) hide show
  1. run.py +15 -10
run.py CHANGED
@@ -1,9 +1,9 @@
1
- #########################################################################################
2
- # Title: Gradio Interface to LLM-chatbot with RAG-funcionality and ChromaDB on HF-Hub
3
  # Author: Andreas Fischer
4
- # Date: December 29th, 2023
5
- # Last update: December 29th, 2023
6
- ##########################################################################################
7
 
8
 
9
  # Chroma-DB
@@ -38,9 +38,14 @@ else:
38
  metadata={"hnsw:space": "cosine"})
39
 
40
  collection.add(
41
- documents=["The meaning of life is to love.", "This is a sentence", "This is a sentence too"],
42
- metadatas=[{"source": "notion"}, {"source": "google-docs"}, {"source": "google-docs"}],
43
- ids=["doc1", "doc2", "doc3"],
 
 
 
 
 
44
  )
45
 
46
  print("Database ready!")
@@ -94,7 +99,7 @@ def response(
94
  #where={"source": "google-docs"}
95
  #where_document={"$contains":"search_string"}
96
  )
97
- dists=["<small>(relevance: "+str(round((1-d)*100/100))+";" for d in results['distances'][0]]
98
  sources=["source: "+s["source"]+")</small>" for s in results['metadatas'][0]]
99
  results=results['documents'][0]
100
  combination = zip(results,dists,sources)
@@ -102,7 +107,7 @@ def response(
102
  print(combination)
103
  if(len(results)>1):
104
  addon=" Bitte berücksichtige bei deiner Antwort ggf. folgende Auszüge aus unserer Datenbank, sofern sie für die Antwort erforderlich sind. Beantworte die Frage knapp und präzise. Ignoriere unpassende Datenbank-Auszüge OHNE sie zu kommentieren, zu erwähnen oder aufzulisten:\n"+"\n".join(results)
105
- system="Du bist ein KI-basiertes Assistenzsystem."+addon+"\n\nUser-Anliegen:"
106
  #body={"prompt":system+"### Instruktion:\n"+message+"\n\n### Antwort:","max_tokens":500, "echo":"False","stream":"True"} #e.g. SauerkrautLM
107
  formatted_prompt = format_prompt(system+"\n"+prompt, history)
108
  stream = client.text_generation(formatted_prompt, **generate_kwargs, stream=True, details=True, return_full_text=False)
 
1
+ #############################################################################################################
2
+ # Title: Gradio Interface to LLM-chatbot (for recommending AI) with RAG-funcionality and ChromaDB on HF-Hub
3
  # Author: Andreas Fischer
4
+ # Date: December 30th, 2023
5
+ # Last update: December 30th, 2023
6
+ ##############################################################################################################
7
 
8
 
9
  # Chroma-DB
 
38
  metadata={"hnsw:space": "cosine"})
39
 
40
  collection.add(
41
+ documents=[
42
+ "Text generating AI model mistralai/Mixtral-8x7B-Instruct-v0.1: Perfect for text generation, e.g., social media content, marketing copy, blog posts, short stories, etc.",
43
+ "Image generating AI model stabilityai/sdxl-turbo: Perfect for image generation, e.g., illustrations, graphics, AI art, etc.",
44
+ "Audio transcribing AI model openai/whisper-large-v3: Perfect for audio-transcription in different languages",
45
+ "Speech synthesizing AI model coqui/XTTS-v2: Perfect for generating audio from text and for voice-cloning"
46
+ ],
47
+ metadatas=[{"source": "AF"}, {"source": "AF"}, {"source": "AF"}, {"source": "AF"}],
48
+ ids=["ai1", "ai2", "ai3", "ai4"],
49
  )
50
 
51
  print("Database ready!")
 
99
  #where={"source": "google-docs"}
100
  #where_document={"$contains":"search_string"}
101
  )
102
+ dists=["<small>(relevance: "+str(round((1-d)*100)/100)+";" for d in results['distances'][0]]
103
  sources=["source: "+s["source"]+")</small>" for s in results['metadatas'][0]]
104
  results=results['documents'][0]
105
  combination = zip(results,dists,sources)
 
107
  print(combination)
108
  if(len(results)>1):
109
  addon=" Bitte berücksichtige bei deiner Antwort ggf. folgende Auszüge aus unserer Datenbank, sofern sie für die Antwort erforderlich sind. Beantworte die Frage knapp und präzise. Ignoriere unpassende Datenbank-Auszüge OHNE sie zu kommentieren, zu erwähnen oder aufzulisten:\n"+"\n".join(results)
110
+ system="Du bist ein deutschsprachiges KI-basiertes Assistenzsystem, das zu jedem Anliegen möglichst geeignete KI-Tools empfiehlt."+addon+"\n\nUser-Anliegen:"
111
  #body={"prompt":system+"### Instruktion:\n"+message+"\n\n### Antwort:","max_tokens":500, "echo":"False","stream":"True"} #e.g. SauerkrautLM
112
  formatted_prompt = format_prompt(system+"\n"+prompt, history)
113
  stream = client.text_generation(formatted_prompt, **generate_kwargs, stream=True, details=True, return_full_text=False)