This commit is contained in:
t0is 2025-03-21 10:07:03 +01:00
parent ec5ef202f9
commit a83e660b47
3 changed files with 159 additions and 36 deletions

View File

@ -1,4 +1,5 @@
[
{ "name": "agraelus", "language": "cs" },
{ "name": "czechcloud", "language": "cs" },
{ "name": "arcadebulls", "language": "cs" },
@ -66,6 +67,9 @@
{ "name": "ntbees", "language": "en" },
{ "name": "nmplol", "language": "en" },
{ "name": "yabbe", "language": "en" },
{ "name": "cyr", "language": "en" },
{ "name": "rachtaz", "language": "en" },
{ "name": "khalamity", "language": "en" },
{ "name": "papaplatte", "language": "de" },
{ "name": "revedtv", "language": "de" },

View File

@ -65,7 +65,7 @@ services:
- /shared/transcriptor/chat:/app/chat
- /shared/transcriptor/models:/app/models
- /shared/transcriptor/transcripts:/app/transcripts
transcriptor:
transcriptor_cs:
deploy:
resources:
reservations:
@ -91,38 +91,83 @@ services:
"language": "cs"}, {"name": "heddi2k", "language": "cs"}, {"name": "vvudy",
"language": "cs"}, {"name": "himtheoldboy", "language": "cs"}, {"name": "fluffcz",
"language": "cs"}, {"name": "tensterakdary", "language": "cs"}, {"name": "amfikcz",
"language": "cs"}, {"name": "tom__mm", "language": "cs"}, {"name": "pimpcsggo",
"language": "en"}, {"name": "dafran", "language": "en"}, {"name": "lexveldhuis",
"language": "en"}, {"name": "mrtweeday", "language": "en"}, {"name": "forsen",
"language": "en"}, {"name": "kuruhs", "language": "en"}, {"name": "quickgabi",
"language": "en"}, {"name": "paoloidolo", "language": "en"}, {"name": "39daph",
"language": "en"}, {"name": "sodapoppin", "language": "en"}, {"name": "nymn",
"language": "en"}, {"name": "knut", "language": "en"}, {"name": "nmplol", "language":
"en"}, {"name": "rachtaz", "language": "en"}, {"name": "delaney", "language":
"en"}, {"name": "hydervrsi", "language": "en"}, {"name": "flatz00", "language":
"en"}, {"name": "kharliito", "language": "en"}, {"name": "pawkt", "language":
"en"}, {"name": "stabitabi", "language": "en"}, {"name": "thehollowedknight",
"language": "en"}, {"name": "wakewilder", "language": "en"}, {"name": "vadikus007",
"language": "en"}, {"name": "jaystreazy", "language": "en"}, {"name": "mhyochi",
"language": "en"}, {"name": "esfandtv", "language": "en"}, {"name": "cooksux",
"language": "en"}, {"name": "vei", "language": "en"}, {"name": "ntbees", "language":
"en"}, {"name": "nmplol", "language": "en"}, {"name": "yabbe", "language": "en"},
{"name": "cyr", "language": "en"}, {"name": "rachtaz", "language": "en"}, {"name":
"khalamity", "language": "en"}, {"name": "papaplatte", "language": "de"}, {"name":
"revedtv", "language": "de"}, {"name": "mirza_jahic", "language": "de"}, {"name":
"rewinside", "language": "de"}, {"name": "maxim", "language": "de"}, {"name":
"tolkinlol", "language": "de"}, {"name": "vlesk", "language": "de"}, {"name":
"kaydop", "language": "fr"}, {"name": "ponce", "language": "fr"}, {"name": "locklear",
"language": "fr"}, {"name": "alfacast", "language": "fr"}, {"name": "valouzz",
"language": "fr"}, {"name": "kamet0", "language": "fr"}, {"name": "shaunz",
"language": "fr"}, {"name": "jbzzed", "language": "fr"}, {"name": "nisqyy",
"language": "fr"}, {"name": "skyyart", "language": "fr"}, {"name": "jladz",
"language": "fr"}, {"name": "dye_live", "language": "fr"}, {"name": "chewbydslife",
"language": "fr"}, {"name": "aloonea", "language": "fr"}, {"name": "thomacky",
"language": "fr"}, {"name": "amobones", "language": "fr"}, {"name": "loupiote3",
"language": "fr"}, {"name": "nawk_", "language": "fr"}, {"name": "yoona", "language":
"fr"}, {"name": "adztv", "language": "fr"}, {"name": "helydia", "language":
"fr"}, {"name": "kaffworld", "language": "fr"}, {"name": "levraidoffy", "language":
"language": "cs"}, {"name": "tom__mm", "language": "cs"}]'
- TIMEDELTA_DAYS=11
- TIMEDELTA_DAYS_EXACT=false
- CLIP_CREATE_FROM_CHAT=false
- TWITCH_CLIENT_ID=a0fuj6tm5ct79clvim9816orphqkov
- TWITCH_CLIENT_SECRET=h7whj3yspxgj1909sgcafx6iz1p1es
image: t0is/madmonq-transcriptor-image:cuda
volumes:
- /shared/transcriptor/clips:/app/clips
- /shared/transcriptor/vods:/app/vods
- /shared/transcriptor/audio:/app/audio
- /shared/transcriptor/chat:/app/chat
- /shared/transcriptor/models:/app/models
- /shared/transcriptor/transcripts:/app/transcripts
transcriptor_en:
deploy:
resources:
reservations:
devices:
- capabilities: [gpu]
count: all
driver: nvidia
environment:
- 'CHANNELS_JSON=[{"name": "pimpcsggo", "language": "en"}, {"name": "dafran",
"language": "en"}, {"name": "lexveldhuis", "language": "en"}, {"name": "mrtweeday",
"language": "en"}, {"name": "forsen", "language": "en"}, {"name": "kuruhs",
"language": "en"}, {"name": "quickgabi", "language": "en"}, {"name": "paoloidolo",
"language": "en"}, {"name": "39daph", "language": "en"}, {"name": "sodapoppin",
"language": "en"}, {"name": "nymn", "language": "en"}, {"name": "knut", "language":
"en"}, {"name": "nmplol", "language": "en"}, {"name": "rachtaz", "language":
"en"}, {"name": "delaney", "language": "en"}, {"name": "hydervrsi", "language":
"en"}, {"name": "flatz00", "language": "en"}, {"name": "kharliito", "language":
"en"}, {"name": "pawkt", "language": "en"}, {"name": "stabitabi", "language":
"en"}, {"name": "thehollowedknight", "language": "en"}, {"name": "wakewilder",
"language": "en"}, {"name": "vadikus007", "language": "en"}, {"name": "jaystreazy",
"language": "en"}, {"name": "mhyochi", "language": "en"}, {"name": "esfandtv",
"language": "en"}, {"name": "cooksux", "language": "en"}, {"name": "vei", "language":
"en"}, {"name": "ntbees", "language": "en"}, {"name": "nmplol", "language":
"en"}, {"name": "yabbe", "language": "en"}, {"name": "cyr", "language": "en"},
{"name": "rachtaz", "language": "en"}, {"name": "khalamity", "language": "en"}]'
- TIMEDELTA_DAYS=11
- TIMEDELTA_DAYS_EXACT=false
- CLIP_CREATE_FROM_CHAT=false
- TWITCH_CLIENT_ID=a0fuj6tm5ct79clvim9816orphqkov
- TWITCH_CLIENT_SECRET=h7whj3yspxgj1909sgcafx6iz1p1es
image: t0is/madmonq-transcriptor-image:cuda
volumes:
- /shared/transcriptor/clips:/app/clips
- /shared/transcriptor/vods:/app/vods
- /shared/transcriptor/audio:/app/audio
- /shared/transcriptor/chat:/app/chat
- /shared/transcriptor/models:/app/models
- /shared/transcriptor/transcripts:/app/transcripts
transcriptor_others:
deploy:
resources:
reservations:
devices:
- capabilities: [gpu]
count: all
driver: nvidia
environment:
- 'CHANNELS_JSON=[{"name": "papaplatte", "language": "de"}, {"name": "revedtv",
"language": "de"}, {"name": "mirza_jahic", "language": "de"}, {"name": "rewinside",
"language": "de"}, {"name": "maxim", "language": "de"}, {"name": "tolkinlol",
"language": "de"}, {"name": "vlesk", "language": "de"}, {"name": "kaydop", "language":
"fr"}, {"name": "ponce", "language": "fr"}, {"name": "locklear", "language":
"fr"}, {"name": "alfacast", "language": "fr"}, {"name": "valouzz", "language":
"fr"}, {"name": "kamet0", "language": "fr"}, {"name": "shaunz", "language":
"fr"}, {"name": "jbzzed", "language": "fr"}, {"name": "nisqyy", "language":
"fr"}, {"name": "skyyart", "language": "fr"}, {"name": "jladz", "language":
"fr"}, {"name": "dye_live", "language": "fr"}, {"name": "chewbydslife", "language":
"fr"}, {"name": "aloonea", "language": "fr"}, {"name": "thomacky", "language":
"fr"}, {"name": "amobones", "language": "fr"}, {"name": "loupiote3", "language":
"fr"}, {"name": "nawk_", "language": "fr"}, {"name": "yoona", "language": "fr"},
{"name": "adztv", "language": "fr"}, {"name": "helydia", "language": "fr"},
{"name": "kaffworld", "language": "fr"}, {"name": "levraidoffy", "language":
"fr"}, {"name": "sniper_biscuit", "language": "fr"}, {"name": "azuma", "language":
"fr"}]'
- TIMEDELTA_DAYS=11

View File

@ -14,15 +14,89 @@ yaml.add_representer(InlineList, inline_list_representer)
with open("channels.json", "r") as f:
channels = json.load(f)
# Instead of multiple services, pass all channels as a JSON string to one container
# Group channels by language
channels_cs = [ch for ch in channels if ch.get("language") == "cs" or ch.get("language") == "sk" ]
channels_en = [ch for ch in channels if ch.get("language") == "en"]
channels_others = [ch for ch in channels if ch.get("language") not in ["cs", "en"]]
# Create JSON strings for each group
channels_cs_json_str = json.dumps(channels_cs)
channels_en_json_str = json.dumps(channels_en)
channels_others_json_str = json.dumps(channels_others)
# Also, full channels for the download-only container
channels_json_str = json.dumps(channels)
compose = {
"services": {
"transcriptor": {
"transcriptor_cs": {
"image": "t0is/madmonq-transcriptor-image:cuda",
"environment": [
f"CHANNELS_JSON={channels_json_str}",
f"CHANNELS_JSON={channels_cs_json_str}",
"TIMEDELTA_DAYS=11",
"TIMEDELTA_DAYS_EXACT=false",
"CLIP_CREATE_FROM_CHAT=false",
"TWITCH_CLIENT_ID=a0fuj6tm5ct79clvim9816orphqkov",
"TWITCH_CLIENT_SECRET=h7whj3yspxgj1909sgcafx6iz1p1es"
],
"volumes": [
"/shared/transcriptor/clips:/app/clips",
"/shared/transcriptor/vods:/app/vods",
"/shared/transcriptor/audio:/app/audio",
"/shared/transcriptor/chat:/app/chat",
"/shared/transcriptor/models:/app/models",
"/shared/transcriptor/transcripts:/app/transcripts"
],
"deploy": {
"resources": {
"reservations": {
"devices": [
{
"driver": "nvidia",
"count": "all",
"capabilities": InlineList(["gpu"])
}
]
}
}
}
},
"transcriptor_en": {
"image": "t0is/madmonq-transcriptor-image:cuda",
"environment": [
f"CHANNELS_JSON={channels_en_json_str}",
"TIMEDELTA_DAYS=11",
"TIMEDELTA_DAYS_EXACT=false",
"CLIP_CREATE_FROM_CHAT=false",
"TWITCH_CLIENT_ID=a0fuj6tm5ct79clvim9816orphqkov",
"TWITCH_CLIENT_SECRET=h7whj3yspxgj1909sgcafx6iz1p1es"
],
"volumes": [
"/shared/transcriptor/clips:/app/clips",
"/shared/transcriptor/vods:/app/vods",
"/shared/transcriptor/audio:/app/audio",
"/shared/transcriptor/chat:/app/chat",
"/shared/transcriptor/models:/app/models",
"/shared/transcriptor/transcripts:/app/transcripts"
],
"deploy": {
"resources": {
"reservations": {
"devices": [
{
"driver": "nvidia",
"count": "all",
"capabilities": InlineList(["gpu"])
}
]
}
}
}
},
"transcriptor_others": {
"image": "t0is/madmonq-transcriptor-image:cuda",
"environment": [
f"CHANNELS_JSON={channels_others_json_str}",
"TIMEDELTA_DAYS=11",
"TIMEDELTA_DAYS_EXACT=false",
"CLIP_CREATE_FROM_CHAT=false",