Thinking of run it with FreshRSS, is there anyone to can help me?
const Parser = require('rss-parser');
const {
GoogleGenerativeAI,
HarmCategory,
HarmBlockThreshold,
} = require('@google/generative-ai');
const MODEL_NAME = 'gemini-1.5-pro-latest';
const API_KEY = 'XXX';
const parser = new Parser();
const feedURL = 'https://test.com/feed/';
async function getRSSData() {
try {
const feed = await parser.parseURL(feedURL);
const latestItem = feed.items[0];
const rssContent = `${latestItem.title} ${latestItem.contentSnippet}`;
return rssContent;
} catch (err) {
console.error('RSS verisi alınamadı:', err);
return null;
}
}
async function runChat() {
const rssContent = await getRSSData();
if (!rssContent) {
console.log('RSS verisi alınamadı.');
return;
}
const genAI = new GoogleGenerativeAI(API_KEY);
const model = genAI.getGenerativeModel({ model: MODEL_NAME });
const generationConfig = {
temperature: 1,
topK: 0,
topP: 0.95,
maxOutputTokens: 8192,
};
const safetySettings = [
{
category: HarmCategory.HARM_CATEGORY_HARASSMENT,
threshold: HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
},
{
category: HarmCategory.HARM_CATEGORY_HATE_SPEECH,
threshold: HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
},
{
category: HarmCategory.HARM_CATEGORY_SEXUALLY_EXPLICIT,
threshold: HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
},
{
category: HarmCategory.HARM_CATEGORY_DANGEROUS_CONTENT,
threshold: HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
},
];
const chat = model.startChat({
generationConfig,
safetySettings,
history: [],
});
const result = await chat.sendMessage(rssContent);
const response = result.response;
console.log(response.text());
}
runChat();