File size: 1,830 Bytes
ef0dcda
 
 
0259995
ef0dcda
 
0259995
ef0dcda
0259995
ef0dcda
 
 
 
 
0259995
ef0dcda
0259995
a633d8d
0259995
ef0dcda
0259995
88d1499
ef0dcda
0259995
ef0dcda
0259995
 
ef0dcda
 
87a3eaa
ef0dcda
0259995
ef0dcda
0259995
ef0dcda
 
 
0259995
ef0dcda
 
 
 
 
 
 
465135d
80a7c95
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
# coding=utf8
from gpt_index import SimpleDirectoryReader, GPTListIndex, GPTSimpleVectorIndex, LLMPredictor, PromptHelper
from langchain import OpenAI
import gradio as gr
import sys
import os

os.environ["OPENAI_API_KEY"] = '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'

def construct_index(directory_path):
    max_input_size = 4096
    num_outputs = 512
    max_chunk_overlap = 20
    chunk_size_limit = 600

    prompt_helper = PromptHelper(max_input_size, num_outputs, max_chunk_overlap, chunk_size_limit=chunk_size_limit)

    llm_predictor = LLMPredictor(llm=OpenAI(temperature=0.0, model_name="text-davinci-003", max_tokens=num_outputs))

    documents = SimpleDirectoryReader(directory_path).load_data()

    index = GPTSimpleVectorIndex.from_documents(documents)
    index.save_to_disk('index.json')

    return index


def chatbot(input_text):
    index = GPTSimpleVectorIndex.load_from_disk('index.json')
    response = index.query(input_text)
    return response.response

description = """

<center>Olá sou a Zoh, fui treinada para responder perguntas com base das informações do Hippo Supermercados. Pergunte qualquer coisa. Caso eu não saiba, estarei aprendendo.
<img src="https://s3.amazonaws.com/enlizt-resources-prod/companies/10958750-6306-11ea-b31c-2b332181af51_256_avatar?nocache=1588599205314" width=200px></center>
"""

iface = gr.Interface(fn=chatbot,
                     inputs=gr.inputs.Textbox(lines=3, label='O quê gostaria de saber?') ,
                     outputs=gr.inputs.Textbox(lines=3, label="Veja o que encontrei"),
                     description=description,
                     css=".gradio-container-3-23-0 {background-color: #5f0000} .gradio-container-3-23-0 .prose * {color: #ffffff}",
                     title="CD2 IA")

index = construct_index("docs")
iface.launch()