Модель gpt-4o-search-preview в LangChain4J — SpringJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Модель gpt-4o-search-preview в LangChain4J — Spring

Сообщение Anonymous »

Сегодня вечером я получил от openAI по электронной почте следующее сообщение:

Поиск в Интернете дает точные и четко цитируемые ответы в Интернете. Используя тот же инструмент, что и поиск в ChatGPT, он отлично подходит для разговоров и дополнительных вопросов — и вы можете интегрировать его всего с помощью нескольких строк кода. Веб-поиск доступен в API ответов как инструмент для моделей gpt-4o и gpt-4o-mini и может использоваться в сочетании с другими инструментами. В Chat Completions API веб-поиск доступен как отдельная модель, называемая gpt-4o-search-preview и gpt-4o-mini-search-preview. Доступно всем разработчикам в предварительной версии.

Вопрос:
В настоящее время я использую langchain4j с Springboot и хочу реализовать модель gpt-4o-search-preview.
Я не знаю, как это сделать. Как мне сказать langchain4j использовать инструмент из самого openAI? И как мне указать langchain4j установить web_search_options, как показано в приведенном ниже фрагменте кода Python:
from openai import OpenAI
client = OpenAI()

completion = client.chat.completions.create(
model="gpt-4o-search-preview",
web_search_options={
"user_location": {
"type": "approximate",
"approximate": {
"country": "GB",
"city": "London",
"region": "London",
}
},
},
messages=[{
"role": "user",
"content": "What are the best restaurants around Granary Square?",
}],
)

print(completion.choices[0].message.content)

Контекст
Ниже приведены коды, которые я сейчас использую:
import dev.langchain4j.service.MemoryId;
import dev.langchain4j.service.Result;
import dev.langchain4j.service.SystemMessage;
import dev.langchain4j.service.UserMessage;
import dev.langchain4j.service.V;
import dev.langchain4j.service.spring.AiService;

@AiService
public interface Assistant {

@SystemMessage("{{systemMessage}}")
Result chat(@MemoryId long memoryId, @UserMessage String userMessage, @V("systemMessage") String systemMessage);
}


@Service
public class ChatAiService {

@Autowired
private Assistant assistant;

@Autowired
private OpenAiModerationModel moderationModel;

@Autowired
private Environment environment;

public ChatAiService() {

}

public String sendRequest(ChatAiDTO chatAiDTO) {

String userInput = chatAiDTO.getInput();
UserDTO loggedUser = LoginContext.getLoggedUser();

String systemMessagePrompt = "You are an educated assistant. Answer me in HTML language.";
String model = environment.getProperty("langchain4j.open-ai.chat-model.model-name");

String response = "";
Result result = null;
try {

Response moderate = moderationModel.moderate(userInput);
boolean flagged = moderate.content().flagged();

if (flagged) {
throw new ModerationException("Blocked by moderation!");
}

result = assistant.chat(loggedUser.getId(), userInput, systemMessagePrompt);

response = result.content();

} catch (ModerationException e) {

response = "Blocked by moderation!";
}
//
//
return response;

}

}


Подробнее здесь: https://stackoverflow.com/questions/795 ... n4j-spring
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»