
KnowledgeGPT está diseñado para recopilar información de varias fuentes, incluidos Internet y los datos locales, que pueden usarse para crear indicaciones. Estas indicaciones pueden ser utilizadas mediante el modelo GPT-3 de OpenAI para generar respuestas que posteriormente se almacenan en una base de datos para referencia futura.
Para lograr esto, el texto primero se transforma en un vector de tamaño fijo utilizando modelos de código abierto o OpenAI. Cuando se envía una consulta, el texto también se transforma en un vector y se compara con las incrustaciones de conocimiento almacenado. La información más relevante se selecciona y se utiliza para generar un contexto rápido.
KnowledgeGPT admite varias fuentes de información, incluidos sitios web, PDF, archivos de PowerPoint (PPTX) y documentos (DOC). Además, puede extraer texto de los subtítulos y audio de YouTube (utilizando tecnología de voz a texto) y usarlo como fuente de información. Esto permite que se recopile y utilice una amplia gama de información para generar indicaciones y respuestas.
Instalación de PYPI, Ejecutar en terminal: pip install knowledgegpt
O puede usar la última versión del repositorio: pip install -r requirements.txt y luego pip install .
Descargue el modelo de idioma necesario para el análisis: python3 -m spacy download en_core_web_sm
uvicorn server:app --reload
# Import the library
from knowledgegpt . extractors . web_scrape_extractor import WebScrapeExtractor
# Import OpenAI and Set the API Key
import openai
from example_config import SECRET_KEY
openai . api_key = SECRET_KEY
# Define target website
url = "https://en.wikipedia.org/wiki/Bombard_(weapon)"
# Initialize the WebScrapeExtractor
scrape_website = WebScrapeExtractor ( url = url , embedding_extractor = "hf" , model_lang = "en" )
# Prompt the OpenAI Model
answer , prompt , messages = scrape_website . extract ( query = "What is a bombard?" , max_tokens = 300 , to_save = True , mongo_client = db )
# See the answer
print ( answer )
# Output: 'A bombard is a type of large cannon used during the 14th to 15th centuries.'Se pueden encontrar otros ejemplos en la carpeta de ejemplos. Pero para dar una mejor idea de cómo usar la biblioteca, aquí hay un ejemplo simple:
# Basic Usage
basic_extractor = BaseExtractor ( df )
answer , prompt , messages = basic_extractor . extract ( "What is the title of this PDF?" , max_tokens = 300 ) # PDF Extraction
pdf_extractor = PDFExtractor ( pdf_file_path , extraction_type = "page" , embedding_extractor = "hf" , model_lang = "en" )
answer , prompt , messages = pdf_extractor . extract ( query , max_tokens = 1500 ) # PPTX Extraction
ppt_extractor = PowerpointExtractor ( file_path = ppt_file_path , embedding_extractor = "hf" , model_lang = "en" )
answer , prompt , messages = ppt_extractor . extract ( query , max_tokens = 500 ) # DOCX Extraction
docs_extractor = DocsExtractor ( file_path = "../example.docx" , embedding_extractor = "hf" , model_lang = "en" , is_turbo = False )
answer , prompt , messages =
docs_extractor . extract ( query = "What is an object detection system?" , max_tokens = 300 ) # Extraction from Youtube video (audio)
scrape_yt_audio = YoutubeAudioExtractor ( video_id = url , model_lang = 'tr' , embedding_extractor = 'hf' )
answer , prompt , messages = scrape_yt_audio . extract ( query = query , max_tokens = 1200 )
# Extraction from Youtube video (transcript)
scrape_yt_subs = YTSubsExtractor ( video_id = url , embedding_extractor = 'hf' , model_lang = 'en' )
answer , prompt , messages = scrape_yt_subs . extract ( query = query , max_tokens = 1200 )docker build -t knowledgegptimage .
docker run -p 8888:8888 knowledgegptimage(Para ser extendido ...)
(Para ser actualizado con una mejor imagen)