A mesura que entrem a l'era de la IA, sembla que tot s'accelera a una velocitat sense precedents. Generatiu això, generatiu allò: sobrecàrrega de dades a tot arreu. Estic bastant segur que ja estàs cansat mentalment de tota la informació, així que anem a la persecució, oi?
El que vull fer:
Vídeo de YouTube → Informació a mida de mossegada → Aprenentatge ✨ + Compartir a les xarxes socials 🐦
… Això és tot…
En aquesta cursa d'IA, tot és qüestió de velocitat. Si podem aprofitar la IA per accelerar el nostre aprenentatge, per què no? Per tant, compartiu-ho, ja sigui amb la vostra família, amics o seguidors, o fins i tot com a influencer.
Repositori: https://github.com/WorkSmarter-lol/yt2tweets-cli/
Aquest tutorial només funciona per a vídeos de YouTube amb subtítols en anglès i no és aplicable als curts de YouTube.
Abans de començar, és crucial tenir una mica de com funcionen els models LangChain.js , Prompt Engineering i OpenAI .
Per al meu cas, faig servir fil per començar el desenvolupament. Pel que fa a un inici ràpid per provar l'script, vaig fer un MVP ràpid utilitzant CLI per provar el projecte.
Per a una referència ràpida i un nom enganxós, el vaig anomenar " yt2tweets
", que essencialment significa → " YouTube to Tweets
".
$ yt2tweets "https://youtu.be/1-TZqOsVCNM" # Result: # Tweet 1: Introduction ... 🧵👇 (1/X) # Tweet 2: ... 🧵 (2/X) # Tweet 3: ... 🧵 (3/X) # Tweet 4: ... 🧵 (4/X) # Tweet 5: Conclusion ... 🧵 (5/X)
Idealment, hem de proporcionar la transcripció com a context per al model d'IA, que és GPT-4o-mini en el nostre cas, perquè pugui entendre el context i resumir l'entrada en el format de sortida que hem especificat.
Aquí rau la salsa secreta ✨ per fer que les coses funcionin: l'enginyeria ràpida és una habilitat bàsica necessària per fer la feina.
Per personalitzar com la CLI converteix els vídeos de YouTube en fils de Twitter/X, seguiu la configuració senzilla i senzilla de 3 passos que he definit. Podeu ajustar el to, la longitud i l'estil per adaptar-vos a les vostres necessitats. Per guiar l'IA, seguiu el bloc d'inserció següent per a un procés de configuració fluid.
Estableix el paper i els objectius de l'IA amb el bloc Identitat i finalitat. Definiu la seva funció i objectius per assegurar-vos que genera contingut que s'alinea amb les vostres necessitats i resultats desitjats.
Definiu les accions pas a pas que l'IA ha de seguir, garantint un enfocament clar i estructurat per generar el vostre contingut.
Especifiqueu els formats en què l'IA ha de lliurar contingut.
Exemple com a continuació:
import { ChatPromptTemplate } from '@langchain/core/prompts'; const prompt = ChatPromptTemplate.fromMessages([ { role: 'system', content: ` # IDENTITY AND PURPOSE {identity} # STEPS {steps} # OUTPUT INSTRUCTIONS {formats} # INPUT INPUT: {input} `, }, ]);
L' {input}
és on he posat tota la transcripció per a GPT per fer el resum.
La referència de com he afegit la meva sol·licitud es pot trobar aquí , amb un exemple a continuació:
Finalment, perquè s'executi, heu de tenir @langchain/openai
instal·lat i la vostra clau de l'API OpenAI a punt. Un cop tot s'hagi resolt, podeu iniciar el model i començar a passar indicacions i fonts a l'IA per obtenir una resposta.
import { ChatOpenAI } from '@langchain/openai'; // Instantiate Model const llm = new ChatOpenAI({ modelName: 'gpt-4o-mini', temperature: 0.7, // <-- feel free to adjust temperature here apiKey, }); // ... // add prompts here // ... // Ensure that chain.invoke correctly passes the variables result = await prompt.pipe(llm).invoke({ identity, steps, formats, input, }); // get result console.log('>> result?.content'); // Tweet 1: Introduction ... 🧵👇 (1/X) ...
Per comoditat, he exportat la funció com a CLI, de manera que em serà fàcil d'utilitzar en el futur.
Per aconseguir-ho he utilitzat:
A continuació es proporciona un fragment del codi (codi complet al final):
import { Command } from 'commander'; import chalk from 'chalk'; import ora from 'ora'; const spinner = ora('Loading...'); // Initialize the command line interface const program = new Command(); // Command to convert a YouTube URL program .argument('<url>') .description('Turn YouTube Videos into Twitter Threads with AI') .action(async url => { const apiKey = readApiKey(); // Read the saved API key // ... spinner.start(); await convertYt2Tweets(url, apiKey); // ... });
https://github.com/WorkSmarter-lol/yt2tweets-cli
De nou, espero que aquest projecte us ajudi a accelerar el vostre aprenentatge i a digerir el contingut de YouTube, o a compartir-lo amb els vostres amics, familiars i seguidors.
Si preferiu accedir al projecte preparat per a la interfície d'usuari, he creat una interfície d'usuari per al mateix projecte. Podeu trobar l'enllaç a continuació:
https://yt2tweets.worksmarter.lol