llama-index-packs-panel-chatbot


Namellama-index-packs-panel-chatbot JSON
Version 0.3.0 PyPI version JSON
download
home_pageNone
Summaryllama-index packs panel_chatbot integration
upload_time2024-11-18 01:32:06
maintainerMarcSkovMadsen
docs_urlNone
authorYour Name
requires_python<4.0,>=3.9
licenseMIT
keywords chatbot github index openai panel
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 🦙 Panel ChatBot Pack

Build a chatbot to talk to your Github repository.

Powered by LlamaIndex, OpenAI ChatGPT and [HoloViz Panel](https://panel.holoviz.org/reference/chat/ChatInterface.html).

![Panel Chat Bot](https://raw.githubusercontent.com/run-llama/llama-hub/main/llama_hub/llama_packs/panel_chatbot/panel_chatbot.png)

## 💁‍♀️ Explanation

This template

- Downloads and indexes a Github repository using the `llama_index` [`GithubRepositoryReader`](https://llamahub.ai/l/github_repo). The default repository is [holoviz/panel](https://github.com/holoviz/panel).
- Creates a [VectorStoreIndex](https://docs.llamaindex.ai/en/stable/changes/deprecated_terms.html#VectorStoreIndex) powered chat engine that will retrieve context from that data to respond to each user query.
- Creates a Panel [`ChatInterface`](https://panel.holoviz.org/reference/chat/ChatInterface.html) UI that will stream each answer from the chat engine.

## 🖥️ CLI Usage

You can download llamapacks directly using `llamaindex-cli`, which comes installed with the `llama-index` Python package:

```bash
pip install llama-index
llamaindex-cli download-llamapack PanelChatPack --download-dir ./panel_chat_pack
```

You can then inspect the files in the `panel_chat_pack` folder and use them as a template for your own project!

To run the app directly, use in your terminal:

```bash
export OPENAI_API_KEY="sk-..."
export GITHUB_TOKEN='...'
panel serve ./panel_chat_pack/base.py
```

As an alternative to `panel serve`, you can run

```bash
python ./panel_chat_pack/base.py
```

## 🎓 Learn More

- [`GithubRepositoryReader`](https://llamahub.ai/l/github_repo)
- [`VectorStoreIndex`](https://docs.llamaindex.ai/en/stable/changes/deprecated_terms.html#VectorStoreIndex)
- [Panel Chat Components](https://panel.holoviz.org/reference/index.html#chat)
- [Panel Chat Examples](https://github.com/holoviz-topics/panel-chat-examples)

## 👍 Credits

- [Marc Skov Madsen](https://twitter.com/MarcSkovMadsen) for creating the template
- [Sophia Yang](https://twitter.com/sophiamyang) for creating the cute LLama image.

## 📈 Potential Improvements

- [ ] Improved Multi-user support
  - [ ] Loading queue: Users should not be able to download the same repository at the same time.
- [ ] Service Context
  - [ ] Enable users to define the service context including `model`, `temperature` etc.
- [ ] Better loading experience
  - [ ] Let the chat assistant show (more fine-grained) status messages. And provide more status changes
- [ ] Focus on the streaming text
  - [ ] The streaming text is not always in focus. I believe its a matter of adjusting the `auto_scroll_limit` limit.
- [ ] Fix minor CSS issues
  - [ ] See the `CSS_FIXES_TO_BE_UPSTREAMED_TO_PANEL` variable in the code
- [ ] Repo Manager
  - [ ] Support using multiple repos. For example the full HoloViz suite

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "llama-index-packs-panel-chatbot",
    "maintainer": "MarcSkovMadsen",
    "docs_url": null,
    "requires_python": "<4.0,>=3.9",
    "maintainer_email": null,
    "keywords": "chatbot, github, index, openai, panel",
    "author": "Your Name",
    "author_email": "you@example.com",
    "download_url": "https://files.pythonhosted.org/packages/74/ce/8cb2d4a059e898c0bde6fe5bc46518d26533a94a77504e7db241396faac5/llama_index_packs_panel_chatbot-0.3.0.tar.gz",
    "platform": null,
    "description": "# \ud83e\udd99 Panel ChatBot Pack\n\nBuild a chatbot to talk to your Github repository.\n\nPowered by LlamaIndex, OpenAI ChatGPT and [HoloViz Panel](https://panel.holoviz.org/reference/chat/ChatInterface.html).\n\n![Panel Chat Bot](https://raw.githubusercontent.com/run-llama/llama-hub/main/llama_hub/llama_packs/panel_chatbot/panel_chatbot.png)\n\n## \ud83d\udc81\u200d\u2640\ufe0f Explanation\n\nThis template\n\n- Downloads and indexes a Github repository using the `llama_index` [`GithubRepositoryReader`](https://llamahub.ai/l/github_repo). The default repository is [holoviz/panel](https://github.com/holoviz/panel).\n- Creates a [VectorStoreIndex](https://docs.llamaindex.ai/en/stable/changes/deprecated_terms.html#VectorStoreIndex) powered chat engine that will retrieve context from that data to respond to each user query.\n- Creates a Panel [`ChatInterface`](https://panel.holoviz.org/reference/chat/ChatInterface.html) UI that will stream each answer from the chat engine.\n\n## \ud83d\udda5\ufe0f CLI Usage\n\nYou can download llamapacks directly using `llamaindex-cli`, which comes installed with the `llama-index` Python package:\n\n```bash\npip install llama-index\nllamaindex-cli download-llamapack PanelChatPack --download-dir ./panel_chat_pack\n```\n\nYou can then inspect the files in the `panel_chat_pack` folder and use them as a template for your own project!\n\nTo run the app directly, use in your terminal:\n\n```bash\nexport OPENAI_API_KEY=\"sk-...\"\nexport GITHUB_TOKEN='...'\npanel serve ./panel_chat_pack/base.py\n```\n\nAs an alternative to `panel serve`, you can run\n\n```bash\npython ./panel_chat_pack/base.py\n```\n\n## \ud83c\udf93 Learn More\n\n- [`GithubRepositoryReader`](https://llamahub.ai/l/github_repo)\n- [`VectorStoreIndex`](https://docs.llamaindex.ai/en/stable/changes/deprecated_terms.html#VectorStoreIndex)\n- [Panel Chat Components](https://panel.holoviz.org/reference/index.html#chat)\n- [Panel Chat Examples](https://github.com/holoviz-topics/panel-chat-examples)\n\n## \ud83d\udc4d Credits\n\n- [Marc Skov Madsen](https://twitter.com/MarcSkovMadsen) for creating the template\n- [Sophia Yang](https://twitter.com/sophiamyang) for creating the cute LLama image.\n\n## \ud83d\udcc8 Potential Improvements\n\n- [ ] Improved Multi-user support\n  - [ ] Loading queue: Users should not be able to download the same repository at the same time.\n- [ ] Service Context\n  - [ ] Enable users to define the service context including `model`, `temperature` etc.\n- [ ] Better loading experience\n  - [ ] Let the chat assistant show (more fine-grained) status messages. And provide more status changes\n- [ ] Focus on the streaming text\n  - [ ] The streaming text is not always in focus. I believe its a matter of adjusting the `auto_scroll_limit` limit.\n- [ ] Fix minor CSS issues\n  - [ ] See the `CSS_FIXES_TO_BE_UPSTREAMED_TO_PANEL` variable in the code\n- [ ] Repo Manager\n  - [ ] Support using multiple repos. For example the full HoloViz suite\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "llama-index packs panel_chatbot integration",
    "version": "0.3.0",
    "project_urls": null,
    "split_keywords": [
        "chatbot",
        " github",
        " index",
        " openai",
        " panel"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "99a894ef7da51fb8c243ef2188faedece7ce743b57766a6e031b5b9fa334f38c",
                "md5": "7a6029ba5adc3ad3669c1d818002ffed",
                "sha256": "a57dc0a9bd7aa53162dad209b8ea904b06b856008fe72dd06efb828b4750ddac"
            },
            "downloads": -1,
            "filename": "llama_index_packs_panel_chatbot-0.3.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "7a6029ba5adc3ad3669c1d818002ffed",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.9",
            "size": 4153941,
            "upload_time": "2024-11-18T01:32:02",
            "upload_time_iso_8601": "2024-11-18T01:32:02.537281Z",
            "url": "https://files.pythonhosted.org/packages/99/a8/94ef7da51fb8c243ef2188faedece7ce743b57766a6e031b5b9fa334f38c/llama_index_packs_panel_chatbot-0.3.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "74ce8cb2d4a059e898c0bde6fe5bc46518d26533a94a77504e7db241396faac5",
                "md5": "fad2bbefc2dbeb48e18f7f91e12d23a1",
                "sha256": "25348d67cbb89913bb4af5bc2a11ae639f0230b8588258eee6bf33694d24ad46"
            },
            "downloads": -1,
            "filename": "llama_index_packs_panel_chatbot-0.3.0.tar.gz",
            "has_sig": false,
            "md5_digest": "fad2bbefc2dbeb48e18f7f91e12d23a1",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.9",
            "size": 4155572,
            "upload_time": "2024-11-18T01:32:06",
            "upload_time_iso_8601": "2024-11-18T01:32:06.997035Z",
            "url": "https://files.pythonhosted.org/packages/74/ce/8cb2d4a059e898c0bde6fe5bc46518d26533a94a77504e7db241396faac5/llama_index_packs_panel_chatbot-0.3.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-18 01:32:06",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "llama-index-packs-panel-chatbot"
}
        
Elapsed time: 0.34919s