Spaces:
Runtime error
Runtime error
| # + tags=["hide_inp"] | |
| desc = """ | |
| ### Book QA | |
| Chain that does question answering with Hugging Face embeddings. [[Code](https://github.com/srush/MiniChain/blob/main/examples/gatsby.py)] | |
| (Adapted from the [LlamaIndex example](https://github.com/jerryjliu/gpt_index/blob/main/examples/gatsby/TestGatsby.ipynb).) | |
| """ | |
| # - | |
| # $ | |
| import datasets | |
| import numpy as np | |
| from minichain import prompt, show, HuggingFaceEmbed, OpenAI | |
| # Load data with embeddings (computed beforehand) | |
| gatsby = datasets.load_from_disk("gatsby") | |
| gatsby.add_faiss_index("embeddings") | |
| # Fast KNN retieval prompt | |
| def get_neighbors(model, inp, k=1): | |
| embedding = model(inp) | |
| res = olympics.get_nearest_examples("embeddings", np.array(embedding), k) | |
| return res.examples["passages"] | |
| def ask(model, query, neighbors): | |
| return model(dict(question=query, docs=neighbors)) | |
| def gatsby(query): | |
| n = get_neighbors(query) | |
| return ask(query, n) | |
| # $ | |
| gradio = show(gatsby, | |
| subprompts=[get_neighbors, ask], | |
| examples=["What did Gatsby do before he met Daisy?", | |
| "What did the narrator do after getting back to Chicago?"], | |
| keys={"HF_KEY"}, | |
| description=desc, | |
| code=open("gatsby.py", "r").read().split("$")[1].strip().strip("#").strip() | |
| ) | |
| if __name__ == "__main__": | |
| gradio.launch() | |
| # + tags=["hide_inp"] | |
| # QAPrompt().show({"question": "Who was Gatsby?", "docs": ["doc1", "doc2", "doc3"]}, "") | |
| # # - | |
| # show_log("gatsby.log") | |