# WisdomWeaver
This is a document question answering implementation that combines several concepts together to
produce an arbitrary document question answering machine.
- Sentence Transformers: used to index text into a vector database
- Question Answering Model: used to find answers in text most likely to contain them
- ChatGPT: used to post process the answers
## Getting started
```
pip3 install wisdomweaver
```
Index a directory of asciidoc files:
```
wisdom -v index --path /path/to/data
```
Search the index in interactive mode:
```
wisdom ask "What practice did many ancient C projects use?" --max 5 --threshold 0.2 --interactive --gpt
```
## License
Apache 2.0
## Learn Mode
- Learn techniques used in this project: https://swedishembedded.com/tag/gpt/
Raw data
{
"_id": null,
"home_page": "",
"name": "wisdomweaver",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": "",
"keywords": "llm,languagemodel,indexing",
"author": "",
"author_email": "Martin Schr\u00f6der <info@swedishembedded.com>",
"download_url": "https://files.pythonhosted.org/packages/2b/5d/16601ff4ee1fabc857d45e109971330de79472ace1d0badbad189cb4c968/wisdomweaver-0.3.1.tar.gz",
"platform": null,
"description": "# WisdomWeaver\n\nThis is a document question answering implementation that combines several concepts together to\nproduce an arbitrary document question answering machine.\n\n- Sentence Transformers: used to index text into a vector database\n- Question Answering Model: used to find answers in text most likely to contain them\n- ChatGPT: used to post process the answers\n\n## Getting started\n\n```\npip3 install wisdomweaver\n```\n\nIndex a directory of asciidoc files:\n\n```\nwisdom -v index --path /path/to/data\n```\n\nSearch the index in interactive mode:\n\n```\nwisdom ask \"What practice did many ancient C projects use?\" --max 5 --threshold 0.2 --interactive --gpt\n```\n\n## License\n\nApache 2.0\n\n## Learn Mode\n\n- Learn techniques used in this project: https://swedishembedded.com/tag/gpt/\n",
"bugtrack_url": null,
"license": "Copyright (C) 2023 Martin Schr\u00f6der <info@swedishembedded.com> Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except in compliance with the License. You may obtain a copy of the License at https://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ",
"summary": "Wisdom indexer and generator",
"version": "0.3.1",
"project_urls": {
"Homepage": "https://github.com/swedishembedded/wisdomweaver"
},
"split_keywords": [
"llm",
"languagemodel",
"indexing"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c8e457eb6d1162c24b7ccfb196e38f57e49669667e4c76374780a27f16ca666a",
"md5": "dae9c5364cb9cc7238344b2414cdd11d",
"sha256": "696f967733ba99c872114409a5e0c48d30dc54e8dd32cd320587045561e7b593"
},
"downloads": -1,
"filename": "wisdomweaver-0.3.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "dae9c5364cb9cc7238344b2414cdd11d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 8860,
"upload_time": "2023-05-25T16:15:30",
"upload_time_iso_8601": "2023-05-25T16:15:30.086706Z",
"url": "https://files.pythonhosted.org/packages/c8/e4/57eb6d1162c24b7ccfb196e38f57e49669667e4c76374780a27f16ca666a/wisdomweaver-0.3.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2b5d16601ff4ee1fabc857d45e109971330de79472ace1d0badbad189cb4c968",
"md5": "e88acca7a32933fc06389bb652dd3392",
"sha256": "7979f66f03cc9ad260402b43e44080149abe76b4c06c43a8811e5975b37837b4"
},
"downloads": -1,
"filename": "wisdomweaver-0.3.1.tar.gz",
"has_sig": false,
"md5_digest": "e88acca7a32933fc06389bb652dd3392",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 9083,
"upload_time": "2023-05-25T16:15:33",
"upload_time_iso_8601": "2023-05-25T16:15:33.136273Z",
"url": "https://files.pythonhosted.org/packages/2b/5d/16601ff4ee1fabc857d45e109971330de79472ace1d0badbad189cb4c968/wisdomweaver-0.3.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-05-25 16:15:33",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "swedishembedded",
"github_project": "wisdomweaver",
"travis_ci": false,
"coveralls": true,
"github_actions": false,
"requirements": [
{
"name": "aiohttp",
"specs": [
[
"==",
"3.8.4"
]
]
},
{
"name": "aiosignal",
"specs": [
[
"==",
"1.3.1"
]
]
},
{
"name": "anyio",
"specs": [
[
"==",
"3.6.2"
]
]
},
{
"name": "async-timeout",
"specs": [
[
"==",
"4.0.2"
]
]
},
{
"name": "attrs",
"specs": [
[
"==",
"23.1.0"
]
]
},
{
"name": "certifi",
"specs": [
[
"==",
"2023.5.7"
]
]
},
{
"name": "charset-normalizer",
"specs": [
[
"==",
"3.1.0"
]
]
},
{
"name": "click",
"specs": [
[
"==",
"8.1.3"
]
]
},
{
"name": "cmake",
"specs": [
[
"==",
"3.26.3"
]
]
},
{
"name": "diskcache",
"specs": [
[
"==",
"5.6.1"
]
]
},
{
"name": "filelock",
"specs": [
[
"==",
"3.12.0"
]
]
},
{
"name": "frozenlist",
"specs": [
[
"==",
"1.3.3"
]
]
},
{
"name": "fsspec",
"specs": [
[
"==",
"2023.5.0"
]
]
},
{
"name": "grpcio",
"specs": [
[
"==",
"1.54.2"
]
]
},
{
"name": "grpcio-tools",
"specs": [
[
"==",
"1.54.2"
]
]
},
{
"name": "guidance",
"specs": [
[
"==",
"0.0.55"
]
]
},
{
"name": "h11",
"specs": [
[
"==",
"0.14.0"
]
]
},
{
"name": "h2",
"specs": [
[
"==",
"4.1.0"
]
]
},
{
"name": "hpack",
"specs": [
[
"==",
"4.0.0"
]
]
},
{
"name": "httpcore",
"specs": [
[
"==",
"0.17.2"
]
]
},
{
"name": "httpx",
"specs": [
[
"==",
"0.24.1"
]
]
},
{
"name": "huggingface-hub",
"specs": [
[
"==",
"0.14.1"
]
]
},
{
"name": "hyperframe",
"specs": [
[
"==",
"6.0.1"
]
]
},
{
"name": "idna",
"specs": [
[
"==",
"3.4"
]
]
},
{
"name": "jinja2",
"specs": [
[
"==",
"3.1.2"
]
]
},
{
"name": "joblib",
"specs": [
[
"==",
"1.2.0"
]
]
},
{
"name": "lit",
"specs": [
[
"==",
"16.0.5"
]
]
},
{
"name": "markupsafe",
"specs": [
[
"==",
"2.1.2"
]
]
},
{
"name": "mpmath",
"specs": [
[
"==",
"1.3.0"
]
]
},
{
"name": "multidict",
"specs": [
[
"==",
"6.0.4"
]
]
},
{
"name": "mypy-extensions",
"specs": [
[
"==",
"1.0.0"
]
]
},
{
"name": "nest-asyncio",
"specs": [
[
"==",
"1.5.6"
]
]
},
{
"name": "networkx",
"specs": [
[
"==",
"3.1"
]
]
},
{
"name": "nltk",
"specs": [
[
"==",
"3.8.1"
]
]
},
{
"name": "numpy",
"specs": [
[
"==",
"1.24.3"
]
]
},
{
"name": "nvidia-cublas-cu11",
"specs": [
[
"==",
"11.10.3.66"
]
]
},
{
"name": "nvidia-cuda-cupti-cu11",
"specs": [
[
"==",
"11.7.101"
]
]
},
{
"name": "nvidia-cuda-nvrtc-cu11",
"specs": [
[
"==",
"11.7.99"
]
]
},
{
"name": "nvidia-cuda-runtime-cu11",
"specs": [
[
"==",
"11.7.99"
]
]
},
{
"name": "nvidia-cudnn-cu11",
"specs": [
[
"==",
"8.5.0.96"
]
]
},
{
"name": "nvidia-cufft-cu11",
"specs": [
[
"==",
"10.9.0.58"
]
]
},
{
"name": "nvidia-curand-cu11",
"specs": [
[
"==",
"10.2.10.91"
]
]
},
{
"name": "nvidia-cusolver-cu11",
"specs": [
[
"==",
"11.4.0.1"
]
]
},
{
"name": "nvidia-cusparse-cu11",
"specs": [
[
"==",
"11.7.4.91"
]
]
},
{
"name": "nvidia-nccl-cu11",
"specs": [
[
"==",
"2.14.3"
]
]
},
{
"name": "nvidia-nvtx-cu11",
"specs": [
[
"==",
"11.7.91"
]
]
},
{
"name": "openai",
"specs": [
[
"==",
"0.27.7"
]
]
},
{
"name": "packaging",
"specs": [
[
"==",
"23.1"
]
]
},
{
"name": "parsimonious",
"specs": [
[
"==",
"0.10.0"
]
]
},
{
"name": "pillow",
"specs": [
[
"==",
"9.5.0"
]
]
},
{
"name": "platformdirs",
"specs": [
[
"==",
"3.5.1"
]
]
},
{
"name": "portalocker",
"specs": [
[
"==",
"2.7.0"
]
]
},
{
"name": "protobuf",
"specs": [
[
"==",
"4.23.1"
]
]
},
{
"name": "pydantic",
"specs": [
[
"==",
"1.10.8"
]
]
},
{
"name": "pygtrie",
"specs": [
[
"==",
"2.5.0"
]
]
},
{
"name": "pypdf",
"specs": [
[
"==",
"3.9.0"
]
]
},
{
"name": "pyre-extensions",
"specs": [
[
"==",
"0.0.29"
]
]
},
{
"name": "pyyaml",
"specs": [
[
"==",
"6.0"
]
]
},
{
"name": "qdrant-client",
"specs": [
[
"==",
"1.2.0"
]
]
},
{
"name": "regex",
"specs": [
[
"==",
"2023.5.5"
]
]
},
{
"name": "requests",
"specs": [
[
"==",
"2.31.0"
]
]
},
{
"name": "scikit-learn",
"specs": [
[
"==",
"1.2.2"
]
]
},
{
"name": "scipy",
"specs": [
[
"==",
"1.10.1"
]
]
},
{
"name": "sentence-transformers",
"specs": [
[
"==",
"2.2.2"
]
]
},
{
"name": "sentencepiece",
"specs": [
[
"==",
"0.1.99"
]
]
},
{
"name": "sniffio",
"specs": [
[
"==",
"1.3.0"
]
]
},
{
"name": "sympy",
"specs": [
[
"==",
"1.12"
]
]
},
{
"name": "threadpoolctl",
"specs": [
[
"==",
"3.1.0"
]
]
},
{
"name": "tiktoken",
"specs": [
[
"==",
"0.4.0"
]
]
},
{
"name": "tokenizers",
"specs": [
[
"==",
"0.13.3"
]
]
},
{
"name": "torch",
"specs": [
[
"==",
"2.0.1"
]
]
},
{
"name": "torchvision",
"specs": [
[
"==",
"0.15.2"
]
]
},
{
"name": "tqdm",
"specs": [
[
"==",
"4.65.0"
]
]
},
{
"name": "transformers",
"specs": [
[
"==",
"4.29.2"
]
]
},
{
"name": "triton",
"specs": [
[
"==",
"2.0.0"
]
]
},
{
"name": "typing-extensions",
"specs": [
[
"==",
"4.5.0"
]
]
},
{
"name": "typing-inspect",
"specs": [
[
"==",
"0.9.0"
]
]
},
{
"name": "urllib3",
"specs": [
[
"==",
"1.26.16"
]
]
},
{
"name": "wheel",
"specs": [
[
"==",
"0.40.0"
]
]
},
{
"name": "xformers",
"specs": [
[
"==",
"0.0.20"
]
]
},
{
"name": "yarl",
"specs": [
[
"==",
"1.9.2"
]
]
}
],
"lcname": "wisdomweaver"
}