Batch summarize YouTube video comments using artificial intelligence (OpenAI, ...).
Project description
Description
Batch summarize YouTube video comments using artificial intelligence (OpenAI, …).
Documentation
Documentation is available on https://dashstrom.github.io/youcomsum
Installation
You can install youcomsum using uv
from PyPI
pip install uv
uv tool install youcomsum
Usage
Before use youcomsum, you must set your OPENAI_API_KEY following the Best Practices for API Key Safety.
youcomsum -v 'http://youtu.be/dQw4w9WgXcQ'
Usage as module
from youcomsum import YouComSum
youcomsum = YouComSum()
text: str = youcomsum.summarize("http://youtu.be/dQw4w9WgXcQ")
print(text)
Development
Contributing
Contributions are very welcome. Tests can be run with poe check, please
ensure the coverage at least stays the same before you submit a pull request.
Setup
You need to install Poetry and Git for work with this project.
git clone https://github.com/Dashstrom/youcomsum
cd youcomsum
poetry install --all-extras
poetry run poe setup
poetry shell
Poe
Poe is available for help you to run tasks.
test Run test suite.
lint Run linters: ruff checker and ruff formatter and mypy.
format Run linters in fix mode.
check Run all checks: lint, test and docs.
check-tag Check if the current tag match the version.
cov Run coverage for generate report and html.
open-cov Open html coverage report in webbrowser.
docs Build documentation.
open-docs Open documentation in webbrowser.
setup Setup pre-commit.
pre-commit Run pre-commit.
commit Test, commit and push.
clean Clean cache files.
Skip commit verification
If the linting is not successful, you can’t commit. For forcing the commit you can use the next command :
git commit --no-verify -m 'MESSAGE'
Commit with commitizen
To respect commit conventions, this repository uses Commitizen.
cz c
How to add dependency
poetry add 'PACKAGE'
Ignore illegitimate warnings
To ignore illegitimate warnings you can add :
# noqa: ERROR_CODE on the same line for ruff.
# type: ignore[ERROR_CODE] on the same line for mypy.
# pragma: no cover on the same line to ignore line for coverage.
# doctest: +SKIP on the same line for doctest.
Uninstall
pipx uninstall youcomsum
License
This work is licensed under MIT.
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file youcomsum-0.0.1.tar.gz.
File metadata
- Download URL: youcomsum-0.0.1.tar.gz
- Upload date:
- Size: 12.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e95918f5a625b55dfd297f86bd6cab378b3d9332c38546fbc82607fe52a3a5e0
|
|
| MD5 |
ac491679723bf7aada7033c579e12ba6
|
|
| BLAKE2b-256 |
d4233e033df117a6d8aa27a824fccf31d9f5435b389a91093b6289894a3d85f2
|
Provenance
The following attestation bundles were made for youcomsum-0.0.1.tar.gz:
Publisher:
publish.yml on Dashstrom/youcomsum
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
youcomsum-0.0.1.tar.gz -
Subject digest:
e95918f5a625b55dfd297f86bd6cab378b3d9332c38546fbc82607fe52a3a5e0 - Sigstore transparency entry: 186631822
- Sigstore integration time:
-
Permalink:
Dashstrom/youcomsum@3a6d2802e4dd7fce36293261c4b7d439da6557a5 -
Branch / Tag:
refs/tags/v0.0.1 - Owner: https://github.com/Dashstrom
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@3a6d2802e4dd7fce36293261c4b7d439da6557a5 -
Trigger Event:
push
-
Statement type:
File details
Details for the file youcomsum-0.0.1-py3-none-any.whl.
File metadata
- Download URL: youcomsum-0.0.1-py3-none-any.whl
- Upload date:
- Size: 10.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
040b7dbf14837240d19c04cc907ea8fe3df64932faa91b43881e42a1f8f1c369
|
|
| MD5 |
5c67c8fe108e4c7d6c011c29d268a2a4
|
|
| BLAKE2b-256 |
b3ef0a560d50639fc54961b7ed2e5a20d347d5ed373749783c32de0e0be60ee9
|
Provenance
The following attestation bundles were made for youcomsum-0.0.1-py3-none-any.whl:
Publisher:
publish.yml on Dashstrom/youcomsum
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
youcomsum-0.0.1-py3-none-any.whl -
Subject digest:
040b7dbf14837240d19c04cc907ea8fe3df64932faa91b43881e42a1f8f1c369 - Sigstore transparency entry: 186631824
- Sigstore integration time:
-
Permalink:
Dashstrom/youcomsum@3a6d2802e4dd7fce36293261c4b7d439da6557a5 -
Branch / Tag:
refs/tags/v0.0.1 - Owner: https://github.com/Dashstrom
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@3a6d2802e4dd7fce36293261c4b7d439da6557a5 -
Trigger Event:
push
-
Statement type: