Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

youtube_qa-1.0.4.tar.gz (3.9 kB view details)

Uploaded Source

Built Distribution

youtube_qa-1.0.4-py3-none-any.whl (5.2 kB view details)

Uploaded Python 3

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

Hashes for youtube_qa-1.0.4.tar.gz
Algorithm Hash digest
SHA256 f88b2c911d28a29d68247aa0fa417ccffcaab2faa02d4ae79ce5a934df8cd4f7
MD5 17579d341f0cd789978ecdba9b71369b
BLAKE2b-256 1f49967bba775442ac8584ef1827b0372e47c89817ca897e100e53ed032c0339

See more details on using hashes here.

Provenance

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

Hashes for youtube_qa-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 b8f5063a41c2cde7be56053fddf03a8f84f55ade4895c7a6ff9fe42bcba6a543
MD5 b8f70b27f40d2b624b44de931a71487c
BLAKE2b-256 ce2684bc14628dab9f1cdc9b82b949961ece6ff14ae9c4f7baefe1fc0b3ca3fa

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page