feat: image quality param — low for posts, medium for article covers
covers.js: generateCoverViaRouterAI принимает quality='medium' по умолчанию postImages.js: quality='low' для постов TG/VK (₽0.25 vs ₽0.84) Экономия 70% на генерации картинок к постам
This commit is contained in:
@@ -272,9 +272,9 @@ async function generateCoverViaImagesEndpoint({ prompt }) {
|
||||
*/
|
||||
/**
|
||||
* RouterAI — стабильный провайдер через /responses + image_generation tool.
|
||||
* Используется как третий fallback когда aiguoguo и Nyxos недоступны.
|
||||
* quality: 'low' для постов TG (₽0.25), 'medium' для обложек/VK (₽0.84)
|
||||
*/
|
||||
async function generateCoverViaRouterAI({ prompt }) {
|
||||
async function generateCoverViaRouterAI({ prompt, quality = 'medium' }) {
|
||||
const base = config.ai.routeraiBaseUrl;
|
||||
const key = config.ai.routeraiApiKey;
|
||||
const model = config.ai.routeraiImageModel || 'openai/gpt-5-image-mini';
|
||||
@@ -283,7 +283,7 @@ async function generateCoverViaRouterAI({ prompt }) {
|
||||
const res = await axios.post(`${base}/responses`, {
|
||||
model,
|
||||
input: `Use the image_generation tool to create this illustration. Only call the tool, no text.\n\n${prompt.slice(0, 3000)}`,
|
||||
tools: [{ type: 'image_generation' }],
|
||||
tools: [{ type: 'image_generation', quality }],
|
||||
tool_choice: { type: 'image_generation' },
|
||||
}, {
|
||||
headers: { Authorization: `Bearer ${key}` },
|
||||
|
||||
Reference in New Issue
Block a user