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. Els resultats: Repositori: https://github.com/WorkSmarter-lol/yt2tweets-cli/ Exempció de responsabilitat: 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. El procés 0. Coneixements previs: Abans de començar, és crucial tenir una mica de com funcionen els models , i . LangChain.js Prompt Engineering OpenAI 1. Eines de requisits previs: (estem utilitzant OpenAI GPT-4o-mini) OpenAI API-Key (paquet NPM): extreu una transcripció d'un vídeo de youtube youtube-transcript Node.js / Fil NPM LangChain.js 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. 2. Escollint el nom per a la CLI Per a una referència ràpida i un nom enganxós, el vaig anomenar " ", que essencialment significa → " ". yt2tweets YouTube to Tweets 3. Sortida desitjada $ 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. 4. Disseny ràpid Aquí rau la salsa secreta ✨ per fer que les coses funcionin: és una habilitat bàsica necessària per fer la feina. l'enginyeria ràpida 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. Identitat i finalitat 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. Passos Definiu les accions pas a pas que l'IA ha de seguir, garantint un enfocament clar i estructurat per generar el vostre contingut. Formats de sortida 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' és on he posat tota la transcripció per a GPT per fer el resum. {input} La referència de com he afegit la meva sol·licitud es pot trobar , amb un exemple a continuació: aquí 5. Posar-ho tot junt Finalment, perquè s'executi, heu de tenir 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. @langchain/openai 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) ... 6. Embolica-ho com a CLI 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: : per habilitar la CLI per al paquet NPM BIN Commander — Elegant spinner terminal Ora : estil de corda terminal Chalk 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); // ... }); Enllaç al repositori (codi complet) https://github.com/WorkSmarter-lol/yt2tweets-cli Conclusió 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