@@ -76,7 +76,6 @@ def test_process_with_n_turns(self) -> None:
76
76
assert next (task .process (inputs = [{}, {}, {}])) == [
77
77
{
78
78
"conversation" : [
79
- {"role" : "system" , "content" : MAGPIE_MULTI_TURN_SYSTEM_PROMPT },
80
79
{"role" : "user" , "content" : "Hello Magpie" },
81
80
{"role" : "assistant" , "content" : "Hello Magpie" },
82
81
{"role" : "user" , "content" : "Hello Magpie" },
@@ -86,7 +85,6 @@ def test_process_with_n_turns(self) -> None:
86
85
},
87
86
{
88
87
"conversation" : [
89
- {"role" : "system" , "content" : MAGPIE_MULTI_TURN_SYSTEM_PROMPT },
90
88
{"role" : "user" , "content" : "Hello Magpie" },
91
89
{"role" : "assistant" , "content" : "Hello Magpie" },
92
90
{"role" : "user" , "content" : "Hello Magpie" },
@@ -96,7 +94,6 @@ def test_process_with_n_turns(self) -> None:
96
94
},
97
95
{
98
96
"conversation" : [
99
- {"role" : "system" , "content" : MAGPIE_MULTI_TURN_SYSTEM_PROMPT },
100
97
{"role" : "user" , "content" : "Hello Magpie" },
101
98
{"role" : "assistant" , "content" : "Hello Magpie" },
102
99
{"role" : "user" , "content" : "Hello Magpie" },
@@ -115,13 +112,50 @@ def test_process_with_end_with_user(self) -> None:
115
112
116
113
task .load ()
117
114
115
+ assert next (task .process (inputs = [{}, {}, {}])) == [
116
+ {
117
+ "conversation" : [
118
+ {"role" : "user" , "content" : "Hello Magpie" },
119
+ {"role" : "assistant" , "content" : "Hello Magpie" },
120
+ {"role" : "user" , "content" : "Hello Magpie" },
121
+ ],
122
+ "model_name" : "test" ,
123
+ },
124
+ {
125
+ "conversation" : [
126
+ {"role" : "user" , "content" : "Hello Magpie" },
127
+ {"role" : "assistant" , "content" : "Hello Magpie" },
128
+ {"role" : "user" , "content" : "Hello Magpie" },
129
+ ],
130
+ "model_name" : "test" ,
131
+ },
132
+ {
133
+ "conversation" : [
134
+ {"role" : "user" , "content" : "Hello Magpie" },
135
+ {"role" : "assistant" , "content" : "Hello Magpie" },
136
+ {"role" : "user" , "content" : "Hello Magpie" },
137
+ ],
138
+ "model_name" : "test" ,
139
+ },
140
+ ]
141
+
142
+ def test_process_with_include_system_prompt (self ) -> None :
143
+ task = Magpie (
144
+ llm = DummyMagpieLLM (magpie_pre_query_template = "llama3" ),
145
+ n_turns = 2 ,
146
+ include_system_prompt = True ,
147
+ )
148
+
149
+ task .load ()
150
+
118
151
assert next (task .process (inputs = [{}, {}, {}])) == [
119
152
{
120
153
"conversation" : [
121
154
{"role" : "system" , "content" : MAGPIE_MULTI_TURN_SYSTEM_PROMPT },
122
155
{"role" : "user" , "content" : "Hello Magpie" },
123
156
{"role" : "assistant" , "content" : "Hello Magpie" },
124
157
{"role" : "user" , "content" : "Hello Magpie" },
158
+ {"role" : "assistant" , "content" : "Hello Magpie" },
125
159
],
126
160
"model_name" : "test" ,
127
161
},
@@ -131,6 +165,7 @@ def test_process_with_end_with_user(self) -> None:
131
165
{"role" : "user" , "content" : "Hello Magpie" },
132
166
{"role" : "assistant" , "content" : "Hello Magpie" },
133
167
{"role" : "user" , "content" : "Hello Magpie" },
168
+ {"role" : "assistant" , "content" : "Hello Magpie" },
134
169
],
135
170
"model_name" : "test" ,
136
171
},
@@ -140,13 +175,18 @@ def test_process_with_end_with_user(self) -> None:
140
175
{"role" : "user" , "content" : "Hello Magpie" },
141
176
{"role" : "assistant" , "content" : "Hello Magpie" },
142
177
{"role" : "user" , "content" : "Hello Magpie" },
178
+ {"role" : "assistant" , "content" : "Hello Magpie" },
143
179
],
144
180
"model_name" : "test" ,
145
181
},
146
182
]
147
183
148
184
def test_process_with_system_prompt_per_row (self ) -> None :
149
- task = Magpie (llm = DummyMagpieLLM (magpie_pre_query_template = "llama3" ), n_turns = 2 )
185
+ task = Magpie (
186
+ llm = DummyMagpieLLM (magpie_pre_query_template = "llama3" ),
187
+ n_turns = 2 ,
188
+ include_system_prompt = True ,
189
+ )
150
190
151
191
task .load ()
152
192
@@ -235,6 +275,7 @@ def test_serialization(self) -> None:
235
275
},
236
276
"n_turns" : 1 ,
237
277
"end_with_user" : False ,
278
+ "include_system_prompt" : False ,
238
279
"only_instruction" : True ,
239
280
"system_prompt" : None ,
240
281
"name" : "magpie_0" ,
@@ -272,6 +313,11 @@ def test_serialization(self) -> None:
272
313
"optional" : True ,
273
314
"description" : "Whether the conversation should end with a user message." ,
274
315
},
316
+ {
317
+ "name" : "include_system_prompt" ,
318
+ "optional" : True ,
319
+ "description" : "Whether to include the system prompt used in the generated conversation." ,
320
+ },
275
321
{
276
322
"name" : "only_instruction" ,
277
323
"optional" : True ,
0 commit comments