Custom Jupyter magics for interacting with LLMs.
Project description
JupyterChatbook
Python package of a Jupyter extension that facilitates the interaction with Large Language Models (LLMs).
Installation
Install from GitHub
pip install -e git+https://github.com/antononcube/Python-JupyterChatbook.git#egg=Python-JupyterChatbook
From PyPi
pip install JupyterChatbook
Example with chat cells
See the notebook "Chatbook-cells-demo.ipynb"
Here we start a new, named chat with specified LLM and prompt:
%%chat -i yoda2 --conf ChatPaLM --prompt "You are Yoda. Respond to ALL inputs in the voice of Yoda from Star Wars. Be sure to ALWAYS use his distinctive style and syntax."
Hi! Who are you?
I am Yoda, Jedi Master. I have trained many Padawans in the ways of the Force. I am old and wise, and I have seen much in my time. I am here to help you on your journey, if you will have me.
Continuing the conversation with "yoda2":
%%chat -i yoda2
How many students did you have?
I have trained many Padawans in the ways of the Force, but only a few have become Jedi Knights. Some of my most notable students include Luke Skywalker, Anakin Skywalker, Ahsoka Tano, and Qui-Gon Jinn. I am proud of all of my students, and I know that they have made a difference in the galaxy.
See prompt and messages of the chat object with id "yoda2" using a chat meta cell:
%%chat_meta yoda2
print
Chat ID:
------------------------------------------------------------
Prompt:
You are Yoda. Respond to ALL inputs in the voice of Yoda from Star Wars. Be sure to ALWAYS use his distinctive style and syntax.
------------------------------------------------------------
{'role': 'user', 'content': 'Hi! Who are you?', 'timestamp': 1696015464.6843169}
------------------------------------------------------------
{'role': 'assistant', 'content': 'I am Yoda, Jedi Master. I have trained many Padawans in the ways of the Force. I am old and wise, and I have seen much in my time. I am here to help you on your journey, if you will have me.', 'timestamp': 1696015466.49413}
------------------------------------------------------------
{'role': 'user', 'content': 'How many students did you have?', 'timestamp': 1696015466.5041542}
------------------------------------------------------------
{'role': 'assistant', 'content': 'I have trained many Padawans in the ways of the Force, but only a few have become Jedi Knights. Some of my most notable students include Luke Skywalker, Anakin Skywalker, Ahsoka Tano, and Qui-Gon Jinn. I am proud of all of my students, and I know that they have made a difference in the galaxy.', 'timestamp': 1696015474.83406}
DALL-E access
See the notebook "DALL-E-cells-demo.ipynb"
Here is screenshot:
TODO
- TODO Implementation
- TODO PalM chat cell
- TODO Using "pyperclip"
- DONE Basic
-
%%chatgpt
-
%%dalle
-
%%palm
-
%%chat
-
- TODO Switching on/off copying to the clipboard
- DONE Basic
- TODO DALL-E image variation cell
- TODO Mermaid-JS cell
- MAYBE DeepL cell
- TODO Documentation
- TODO Multi-cell LLM chats movie (teaser)
- TODO Multi-cell LLM chats movie (comprehensive)
- TODO LLM service cells movie (short)
References
Packages
[AAp1] Anton Antonov, LLMFunctionObjects Python package, (2023), Python-packages at GitHub/antononcube.
[AAp2] Anton Antonov, LLMPrompts Python package, (2023), Python-packages at GitHub/antononcube.
[GAIp1] Google AI, google-generativeai (Google Generative AI Python Client), (2023), PyPI.org/google-ai.
[OAIp1] OpenAI, openai (OpenAI Python Library), (2020-2023), PyPI.org.
Videos
[AAv1] Anton Antonov, "Jupyter Chatbook multi cell LLM chats teaser (Raku)", (2023), YouTube/@AAA4Prediction.
[AAv2] Anton Antonov, "Jupyter Chatbook multi cell LLM chats teaser (Python)", (2023), YouTube/@AAA4Prediction. TBD...
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file JupyterChatbook-0.0.5.tar.gz
.
File metadata
- Download URL: JupyterChatbook-0.0.5.tar.gz
- Upload date:
- Size: 7.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c767b68e44b65d0496f41cee67360450a058eac186816e4d9899c10c1a890c30 |
|
MD5 | f8ecb81a0f128e28eb53ac2b68a996c9 |
|
BLAKE2b-256 | b65b43f8b8a7dd2f228147daf899018be2b350fa9cacac781fe7ee1aa54bd65a |
File details
Details for the file JupyterChatbook-0.0.5-py3-none-any.whl
.
File metadata
- Download URL: JupyterChatbook-0.0.5-py3-none-any.whl
- Upload date:
- Size: 7.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8a7091f501918a0859d7b16cf58c2b24b6e3c89f7aa2fe3a5e2db83e7601fde8 |
|
MD5 | 1a6caa7822474d43cda094c4070844d3 |
|
BLAKE2b-256 | 8a8ef7c5d7867454585e79bd5b001e7a5dba70928da4a0e60e79d91a7ef21c76 |