Spaces:
Runtime error
Runtime error
Download app.py from GoData/Fables-beta: direct link, hf CLI and curl.
- Browser
- Download file 2.09 kB
-
https://huggingface.co/spaces/GoData/Fables-beta/resolve/main/app.py
- Command line
-
hf download hf://spaces/GoData/Fables-beta/app.py
-
curl -L -o app.py https://huggingface.co/spaces/GoData/Fables-beta/resolve/main/app.py
2.09 kB
| #!pip install python-dotenv | |
| #pip install duckdb | |
| import duckdb | |
| #pip install llama_index_core | |
| import os | |
| #pip install openai | |
| import openai | |
| import textwrap | |
| #pip install llama_index.vector_stores.duckdb | |
| import llama_index.vector_stores.duckdb | |
| #pip install llama-index-embeddings-openai | |
| #import llama-index-embeddings-openai | |
| import os | |
| import openai | |
| import textwrap | |
| import os | |
| file_path = 'persist/my_vector_store.duckdb' | |
| # Check if file exists | |
| if os.path.exists(file_path): | |
| #Delete the file | |
| os.remove(file_path) | |
| print("File deleted successfully") | |
| else: | |
| print("File doesn't exist - first run - it's all good") | |
| from dotenv import load_dotenv | |
| load_dotenv() | |
| api_key = os.getenv('OPENAI_API_KEY') | |
| from openai import OpenAI | |
| client = OpenAI(api_key=api_key) | |
| print("OpenAI key generated") | |
| from llama_index.core import VectorStoreIndex, SimpleDirectoryReader | |
| from llama_index.vector_stores.duckdb import DuckDBVectorStore | |
| from llama_index.core import StorageContext | |
| print("Vector Stores Generated") | |
| # Initialize DuckDB vector store with persistence | |
| vector_store = DuckDBVectorStore("my_vector_store.duckdb", persist_dir="./persist/") | |
| print("Initialized DuckDB vector store with peristance") | |
| documents = SimpleDirectoryReader("PDFs").load_data() | |
| print("PDFs loaded into Duckdb") | |
| storage_context = StorageContext.from_defaults(vector_store=vector_store) | |
| print("storage_context defined") | |
| index = VectorStoreIndex.from_documents(documents, storage_context=storage_context) | |
| print("Index generated from vector stores in DuckDB") | |
| import gradio as gr | |
| # Create a custom theme with blue as the primary color | |
| theme = gr.themes.Default(primary_hue="blue") | |
| def greet(query): | |
| query_engine = index.as_query_engine() | |
| response = query_engine.query(query) | |
| strresponse = str(response) | |
| #return(gradio.Markdown(strresponse)) | |
| #return(textwrap.fill(str(response), 80)) | |
| return(f"{response}") | |
| #display(Markdown(f"<b>{response}</b>") | |
| #return "Hello " + query + "!" | |
| demo = gr.Interface(fn=greet, inputs="text", outputs="text") | |
| demo.launch(share=True) | |