Upgrade from GPT-3.5-turbo to GPT-4o-mini for better performance and cost efficiency
- Updated all 13 OpenAI API calls to use gpt-4o-mini model - Updated source labels to reflect new model usage - Benefits: Better performance, more recent training data, improved instruction following - Cost: Significantly lower (/usr/bin/bash.15//usr/bin/bash.60 vs /usr/bin/bash.50/.50 per 1M tokens) - Enhanced multilingual support for German/English conversations - Improved Socratic teaching capabilities for children
This commit is contained in:
@@ -125,7 +125,7 @@ app.post('/api/reveal-answer', async (req, res) => {
|
|||||||
|
|
||||||
// Function to get OpenAI-powered educational guidance (Primary)
|
// Function to get OpenAI-powered educational guidance (Primary)
|
||||||
async function getOpenAIGuidance(question, language) {
|
async function getOpenAIGuidance(question, language) {
|
||||||
console.log('🤖 Calling OpenAI with GPT-3.5-turbo...');
|
console.log('🤖 Calling OpenAI with GPT-4o-mini...');
|
||||||
|
|
||||||
const isGerman = language === 'de';
|
const isGerman = language === 'de';
|
||||||
|
|
||||||
@@ -139,7 +139,7 @@ async function getOpenAIGuidance(question, language) {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
const completion = await openai.chat.completions.create({
|
const completion = await openai.chat.completions.create({
|
||||||
model: "gpt-3.5-turbo",
|
model: "gpt-4o-mini",
|
||||||
messages: [
|
messages: [
|
||||||
{ role: "system", content: systemPrompt },
|
{ role: "system", content: systemPrompt },
|
||||||
{ role: "user", content: userPrompt }
|
{ role: "user", content: userPrompt }
|
||||||
@@ -158,7 +158,7 @@ async function getOpenAIGuidance(question, language) {
|
|||||||
type: 'ai-powered',
|
type: 'ai-powered',
|
||||||
steps: steps,
|
steps: steps,
|
||||||
encouragement: getRandomEncouragement(language, question),
|
encouragement: getRandomEncouragement(language, question),
|
||||||
source: 'OpenAI GPT-3.5'
|
source: 'OpenAI GPT-4o-mini'
|
||||||
};
|
};
|
||||||
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
@@ -472,7 +472,7 @@ async function getActualAnswer(question, language) {
|
|||||||
try {
|
try {
|
||||||
if (process.env.OPENAI_API_KEY) {
|
if (process.env.OPENAI_API_KEY) {
|
||||||
const completion = await openai.chat.completions.create({
|
const completion = await openai.chat.completions.create({
|
||||||
model: "gpt-3.5-turbo",
|
model: "gpt-4o-mini",
|
||||||
messages: [
|
messages: [
|
||||||
{ role: "system", content: systemPrompt },
|
{ role: "system", content: systemPrompt },
|
||||||
{ role: "user", content: userPrompt }
|
{ role: "user", content: userPrompt }
|
||||||
@@ -487,7 +487,7 @@ async function getActualAnswer(question, language) {
|
|||||||
return {
|
return {
|
||||||
type: 'ai-powered',
|
type: 'ai-powered',
|
||||||
text: answer.trim(),
|
text: answer.trim(),
|
||||||
source: 'OpenAI GPT-3.5'
|
source: 'OpenAI GPT-4o-mini'
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
@@ -570,7 +570,7 @@ The child is expressing confusion and needs help understanding. Provide a clear,
|
|||||||
if (process.env.OPENAI_API_KEY) {
|
if (process.env.OPENAI_API_KEY) {
|
||||||
try {
|
try {
|
||||||
const completion = await openai.chat.completions.create({
|
const completion = await openai.chat.completions.create({
|
||||||
model: "gpt-3.5-turbo",
|
model: "gpt-4o-mini",
|
||||||
messages: [
|
messages: [
|
||||||
{
|
{
|
||||||
role: "system",
|
role: "system",
|
||||||
@@ -588,7 +588,7 @@ The child is expressing confusion and needs help understanding. Provide a clear,
|
|||||||
return res.json({
|
return res.json({
|
||||||
success: true,
|
success: true,
|
||||||
response: aiResponse,
|
response: aiResponse,
|
||||||
source: 'OpenAI GPT-3.5 (Confusion Explanation)'
|
source: 'OpenAI GPT-4o-mini (Confusion Explanation)'
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
} catch (openaiError) {
|
} catch (openaiError) {
|
||||||
@@ -646,7 +646,7 @@ The child is asking for a definition, explanation, or clarification about locati
|
|||||||
if (process.env.OPENAI_API_KEY) {
|
if (process.env.OPENAI_API_KEY) {
|
||||||
try {
|
try {
|
||||||
const completion = await openai.chat.completions.create({
|
const completion = await openai.chat.completions.create({
|
||||||
model: "gpt-3.5-turbo",
|
model: "gpt-4o-mini",
|
||||||
messages: [
|
messages: [
|
||||||
{
|
{
|
||||||
role: "system",
|
role: "system",
|
||||||
@@ -664,7 +664,7 @@ The child is asking for a definition, explanation, or clarification about locati
|
|||||||
return res.json({
|
return res.json({
|
||||||
success: true,
|
success: true,
|
||||||
response: aiResponse,
|
response: aiResponse,
|
||||||
source: 'OpenAI GPT-3.5 (Definition Response)'
|
source: 'OpenAI GPT-4o-mini (Definition Response)'
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
} catch (openaiError) {
|
} catch (openaiError) {
|
||||||
@@ -726,7 +726,7 @@ IMPORTANT:
|
|||||||
if (process.env.OPENAI_API_KEY) {
|
if (process.env.OPENAI_API_KEY) {
|
||||||
try {
|
try {
|
||||||
const completion = await openai.chat.completions.create({
|
const completion = await openai.chat.completions.create({
|
||||||
model: "gpt-3.5-turbo",
|
model: "gpt-4o-mini",
|
||||||
messages: [
|
messages: [
|
||||||
{
|
{
|
||||||
role: "system",
|
role: "system",
|
||||||
@@ -744,7 +744,7 @@ IMPORTANT:
|
|||||||
return res.json({
|
return res.json({
|
||||||
success: true,
|
success: true,
|
||||||
response: aiResponse,
|
response: aiResponse,
|
||||||
source: 'OpenAI GPT-3.5'
|
source: 'OpenAI GPT-4o-mini'
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
} catch (openaiError) {
|
} catch (openaiError) {
|
||||||
@@ -828,7 +828,7 @@ CHILD'S ANSWER: "${userAnswer}"
|
|||||||
Ask one thoughtful follow-up question that invites the child to explore the topic deeper. The question should spark curiosity and encourage hands-on observation. Give NO answers - just one fascinating question.`;
|
Ask one thoughtful follow-up question that invites the child to explore the topic deeper. The question should spark curiosity and encourage hands-on observation. Give NO answers - just one fascinating question.`;
|
||||||
|
|
||||||
const completion = await openai.chat.completions.create({
|
const completion = await openai.chat.completions.create({
|
||||||
model: "gpt-3.5-turbo",
|
model: "gpt-4o-mini",
|
||||||
messages: [
|
messages: [
|
||||||
{ role: "system", content: systemPrompt },
|
{ role: "system", content: systemPrompt },
|
||||||
{ role: "user", content: userPrompt }
|
{ role: "user", content: userPrompt }
|
||||||
@@ -844,7 +844,7 @@ Ask one thoughtful follow-up question that invites the child to explore the topi
|
|||||||
return res.json({
|
return res.json({
|
||||||
success: true,
|
success: true,
|
||||||
response: aiResponse,
|
response: aiResponse,
|
||||||
source: 'OpenAI GPT-3.5 Deeper Exploration'
|
source: 'OpenAI GPT-4o-mini Deeper Exploration'
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
} catch (openaiError) {
|
} catch (openaiError) {
|
||||||
|
|||||||
Reference in New Issue
Block a user