A RAG (Retrival Augmented Generation) based fully open source software which provides summaries of related news articles built using ChromaDB vector database, mixtral-8x7b-instruct-v0.1 LLM (through Replicate AI), New York Times web scraper, dhivyeshrk/bart-large-cnn-samsum Fine-Tuned model for text summarization and sentence-transformers/sentence-t5-base incorporação de huggingface.
Data for different categories of news articles were obtained from the following rss-formatted files : Technology: https://rss.nytimes.com/services/xml/rss/nyt/Technology.xml Sports: https://rss.nytimes.com/services/xml/rss/nyt/Sports.xml Science: https://rss.nytimes.com/services/xml/rss/nyt/science.xml Health: https://rss.nytimes.com/services/xml/rss/nyt/science.xml
As manchetes, descrições e domínios para cada artigo de notícias são vetorizados usando as incorporações da frase-T5-BASE e armazenadas em um cliente cromadb persistente. Os links para os respectivos artigos de notícias também são armazenados nos metadados. Além disso, as notícias de cada domínio são armazenadas em uma instância de coleção Chromadb diferente para recuperação eficiente.
A raspagem na web foi feita usando o raspador fornecido pela NY Times API, que fornece apenas ~ 40-60 palavras das notícias. A parede pode ser ignorada facilmente, mesmo com o BeautifulSoup4, mas não tem certeza sobre sua legalidade.
Para categorização imediata, usamos o modelo Mixtral-8x7B-Instrut-V0.1 devido a seus recursos excepcionais, execução baseada em nuvem na IA replicada e prevenção sem esforço de alucinação. Para o texto-verão, usamos uma versão ajustada do modelo Bart-Large da HuggingFace proposta originalmente pelo Facebook. O modelo foi treinado no conjunto de dados CNN_DAILYMAIL e ainda mais ajustado no conjunto de dados Samsum, alcançando uma melhoria de 103% no benchmark Rouge2. É um modelo bastante leve com um tamanho de ~ 1,6 GB. Links: https://huggingface.co/dhivyeshrk/bart-large-cnn-samsum https://replicate.com/mistralai/mixtral-8x7b-instruct-v0.1
Use suas chaves da API da API do New York Times e replique a API da AI e substitua -as em web_scrape_nyt.py e categorize_prompt.py, respectivamente. Em seguida, execute main.py