Question answering over YouTube videos with embeddings and LLMs.
Project description
YouTube Question Answer
Simple experiment for question answering on YouTube videos using embeddings and the top n YouTube search result transcripts.
The function will take a question and optionally a YouTube search query (otherwise an LLM will auto-generate one), will compile transcripts for each video result, generate an embedding index using the transcripts and then answer the question using the relevant embeddings.
The function will return both a string response and a list of sources that were used for the answer.
Installation
The package can be installed from PyPI with pip install youtube-qa
. Make sure to set your OPENAI_API_KEY
environment variable before using.
Example
from youtube_qa.youtube_video_index import VideoIndexQueryResponse, YouTubeVideoIndex
video_index = YouTubeVideoIndex()
video_index.build_index(
search_term="huberman motivation",
video_results=3,
)
response: VideoIndexQueryResponse = video_index.answer_question(
question="what are the best researched supplements to help with exercise motivation",
)
print(response.answer) # The answer to the question.
print(response.sources) # Video links and other metadata.
You can also generate the search query given the question:
from youtube_qa.youtube_video_index import VideoIndexQueryResponse, YouTubeVideoIndex
question = "what are the best researched supplements to help with exercise motivation"
video_index = YouTubeVideoIndex(
# Can optionally pass in custom embedding model and LLM here.
)
search_term = video_index.generate_search_query(question)
video_index.build_index(
search_term=search_term,
video_results=3,
)
response: VideoIndexQueryResponse = video_index.answer_question(
question=question,
)
print(response.answer) # The answer to the question.
print(response.sources) # Video links and other metadata.
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 youtube_qa-1.0.4.tar.gz
.
File metadata
- Download URL: youtube_qa-1.0.4.tar.gz
- Upload date:
- Size: 3.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f88b2c911d28a29d68247aa0fa417ccffcaab2faa02d4ae79ce5a934df8cd4f7 |
|
MD5 | 17579d341f0cd789978ecdba9b71369b |
|
BLAKE2b-256 | 1f49967bba775442ac8584ef1827b0372e47c89817ca897e100e53ed032c0339 |
File details
Details for the file youtube_qa-1.0.4-py3-none-any.whl
.
File metadata
- Download URL: youtube_qa-1.0.4-py3-none-any.whl
- Upload date:
- Size: 5.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b8f5063a41c2cde7be56053fddf03a8f84f55ade4895c7a6ff9fe42bcba6a543 |
|
MD5 | b8f70b27f40d2b624b44de931a71487c |
|
BLAKE2b-256 | ce2684bc14628dab9f1cdc9b82b949961ece6ff14ae9c4f7baefe1fc0b3ca3fa |