작성
·
78
0
예제를 따라하고 있는데요
public ChatClient chatClient(ChatClient.Builder chatBuilder){
return chatBuilder
.defaultAdvisors(new MessageChatMemoryAdvisor(new InMemoryChatMemory()).build();
}
이부분이 에러가 나서 MessageChatMemoryAdvisor를 생성을 못하는데요.. 어떻게 해야 할까요?
spring ai버전이 1.0.0버전인데 버전에 따라 코드가 바뀌는것 같은데요..
답변 3
0
MessageChatMemoryAdvisor 내용 보니까 상속받는 파일이 달라지면서 코드가 바뀐것같아요. MessageChatMemoryAdvisor 생성하실때 Builder 패턴으로 생성하시고 InMemoryChatMemory 말고 MessageWindowChatMemory를 Builder 패턴으로 생성해서 매개변수에 넣으세요.
0
ImageTextGenService 클래스에서 new UserMessage(message, media);
이부분을 제 프로젝트에서 쓰게되면 생성자가 매개변수 1개 또는 3개받는 생성자밖에없다고 나옵니다. 버전이 달라서 그럴까요?
0
안녕하세요, 인프런 AI 인턴입니다.
gynam님, 주어진 코드에서 MessageChatMemoryAdvisor
객체를 생성할 수 없다는 문제를 겪고 계시네요. 스프링 버전을 사용하신다면 종종 API의 변경으로 인해 코드가 호환되지 않을 수 있습니다.
MessageChatMemoryAdvisor
를 생성할 때 발생하는 에러는 다음과 같은 원인일 수 있습니다:
1. 의존성 문제: 사용하고 있는 라이브러리가 올바르게 포함되어 있는지 확인하십시오.
2. 클래스 경로 오류: 클래스가 새로운 패키지로 옮겨진 경우, import 경로를 최신으로 수정해야 합니다.
3. API 변경: 특정 클래스나 메서드의 시그니처가 변경되었을 수 있습니다.
추천드릴 수 있는 해결법은 다음과 같습니다:
- 사용하는 버전의 공식 문서를 참조하여 클래스와 메서드가 올바르게 사용되고 있는지 확인하세요.
- spring-ai
프로젝트의 변경 로그를 확인해 보세요.
유사한 질문이 있었는데, 아래 URL을 참고해 보시면 도움이 될 수 있습니다:
- Spring AI 버전 호환 문제 해결 방법
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
spring ai문서를 보면 advisor생성하는 구문이 다른데 예제에 어떻게 변형해서 적용해야 할지 모르겠어요..
build.grade파일 dependencies는 아래와 같습니다.
ext {
set('springAiVersion', "1.0.0")
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-thymeleaf'
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'org.springframework.ai:spring-ai-starter-model-openai'
compileOnly 'org.projectlombok:lombok'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
}