27
27
from neo4j_graphrag .generation .prompts import RagTemplate
28
28
from neo4j_graphrag .generation .types import RagInitModel , RagResultModel , RagSearchModel
29
29
from neo4j_graphrag .llm import LLMInterface
30
+ from neo4j_graphrag .llm .utils import legacy_inputs_to_messages
30
31
from neo4j_graphrag .message_history import MessageHistory
31
32
from neo4j_graphrag .retrievers .base import Retriever
32
33
from neo4j_graphrag .types import LLMMessage , RetrieverResult
@@ -145,12 +146,17 @@ def search(
145
146
prompt = self .prompt_template .format (
146
147
query_text = query_text , context = context , examples = validated_data .examples
147
148
)
149
+
150
+ messages = legacy_inputs_to_messages (
151
+ prompt ,
152
+ message_history = message_history ,
153
+ system_instruction = self .prompt_template .system_instructions ,
154
+ )
155
+
148
156
logger .debug (f"RAG: retriever_result={ prettify (retriever_result )} " )
149
157
logger .debug (f"RAG: prompt={ prompt } " )
150
158
llm_response = self .llm .invoke (
151
- prompt ,
152
- message_history ,
153
- system_instruction = self .prompt_template .system_instructions ,
159
+ messages ,
154
160
)
155
161
answer = llm_response .content
156
162
result : dict [str , Any ] = {"answer" : answer }
@@ -168,9 +174,12 @@ def _build_query(
168
174
summarization_prompt = self ._chat_summary_prompt (
169
175
message_history = message_history
170
176
)
171
- summary = self . llm . invoke (
172
- input = summarization_prompt ,
177
+ messages = legacy_inputs_to_messages (
178
+ summarization_prompt ,
173
179
system_instruction = summary_system_message ,
180
+ )
181
+ summary = self .llm .invoke (
182
+ messages ,
174
183
).content
175
184
return self .conversation_prompt (summary = summary , current_query = query_text )
176
185
return query_text
0 commit comments