rasa-pro 3.13.1a10__py3-none-any.whl → 3.13.1a12__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of rasa-pro might be problematic. Click here for more details.
- rasa/builder/README.md +1 -1
- rasa/builder/main.py +4 -4
- rasa/builder/service.py +214 -122
- rasa/cli/scaffold.py +2 -0
- rasa/version.py +1 -1
- {rasa_pro-3.13.1a10.dist-info → rasa_pro-3.13.1a12.dist-info}/METADATA +1 -1
- {rasa_pro-3.13.1a10.dist-info → rasa_pro-3.13.1a12.dist-info}/RECORD +10 -10
- {rasa_pro-3.13.1a10.dist-info → rasa_pro-3.13.1a12.dist-info}/NOTICE +0 -0
- {rasa_pro-3.13.1a10.dist-info → rasa_pro-3.13.1a12.dist-info}/WHEEL +0 -0
- {rasa_pro-3.13.1a10.dist-info → rasa_pro-3.13.1a12.dist-info}/entry_points.txt +0 -0
rasa/builder/README.md
CHANGED
|
@@ -115,6 +115,6 @@ Only classes that truly need state:
|
|
|
115
115
|
|
|
116
116
|
1. **`LLMService`** - Caches schemas and manages OpenAI client
|
|
117
117
|
2. **`ProjectGenerator`** - Maintains current bot files
|
|
118
|
-
3. **`
|
|
118
|
+
3. **`BotBuilderService`** - Manages Sanic app and agent state
|
|
119
119
|
|
|
120
120
|
Everything else uses pure functions for maximum simplicity and testability.
|
rasa/builder/main.py
CHANGED
|
@@ -7,13 +7,13 @@ from typing import Optional
|
|
|
7
7
|
|
|
8
8
|
import rasa.core.utils
|
|
9
9
|
from rasa.builder.logging_utils import collecting_logs_processor
|
|
10
|
-
from rasa.builder.service import
|
|
10
|
+
from rasa.builder.service import BotBuilderService
|
|
11
11
|
from rasa.utils.common import configure_logging_and_warnings
|
|
12
12
|
from rasa.utils.log_utils import configure_structlog
|
|
13
13
|
from rasa.utils.sanic_error_handler import register_custom_sanic_error_handler
|
|
14
14
|
|
|
15
15
|
|
|
16
|
-
def setup_logging():
|
|
16
|
+
def setup_logging() -> None:
|
|
17
17
|
"""Setup logging configuration."""
|
|
18
18
|
log_level = logging.DEBUG
|
|
19
19
|
|
|
@@ -31,7 +31,7 @@ def setup_logging():
|
|
|
31
31
|
)
|
|
32
32
|
|
|
33
33
|
|
|
34
|
-
def main(project_folder: Optional[str] = None):
|
|
34
|
+
def main(project_folder: Optional[str] = None) -> None:
|
|
35
35
|
"""Main entry point."""
|
|
36
36
|
try:
|
|
37
37
|
# Setup logging
|
|
@@ -39,7 +39,7 @@ def main(project_folder: Optional[str] = None):
|
|
|
39
39
|
|
|
40
40
|
# Create and configure service
|
|
41
41
|
|
|
42
|
-
service =
|
|
42
|
+
service = BotBuilderService(project_folder)
|
|
43
43
|
register_custom_sanic_error_handler(service.app)
|
|
44
44
|
|
|
45
45
|
# Log available routes
|
rasa/builder/service.py
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"""Main service for the prompt-to-bot functionality."""
|
|
2
2
|
|
|
3
|
+
import os
|
|
3
4
|
from typing import Optional
|
|
4
5
|
|
|
5
6
|
import structlog
|
|
@@ -35,8 +36,8 @@ from rasa.shared.core.trackers import DialogueStateTracker
|
|
|
35
36
|
structlogger = structlog.get_logger()
|
|
36
37
|
|
|
37
38
|
|
|
38
|
-
class
|
|
39
|
-
"""Main service for
|
|
39
|
+
class BotBuilderService:
|
|
40
|
+
"""Main service for bot building functionality."""
|
|
40
41
|
|
|
41
42
|
def __init__(self, project_folder: Optional[str] = None):
|
|
42
43
|
"""Initialize the service with a project folder for file persistence.
|
|
@@ -50,13 +51,16 @@ class PromptToBotService:
|
|
|
50
51
|
|
|
51
52
|
project_folder = tempfile.mkdtemp(prefix="rasa_builder_")
|
|
52
53
|
|
|
54
|
+
# working directory needs to be the project folder, e.g.
|
|
55
|
+
# for relative paths (./docs) in a projects config to work
|
|
56
|
+
os.chdir(project_folder)
|
|
57
|
+
|
|
53
58
|
structlogger.info(
|
|
54
|
-
"
|
|
59
|
+
"bot_builder_service.service_initialized", project_folder=project_folder
|
|
55
60
|
)
|
|
56
61
|
|
|
57
62
|
self.project_generator = ProjectGenerator(project_folder)
|
|
58
|
-
|
|
59
|
-
self.app = Sanic("PromptToBotService")
|
|
63
|
+
self.app = Sanic("BotBuilderService")
|
|
60
64
|
self.app.config.REQUEST_TIMEOUT = 60 # 1 minute timeout
|
|
61
65
|
self.app.ctx.agent = None
|
|
62
66
|
self.input_channel = self.setup_input_channel()
|
|
@@ -116,165 +120,249 @@ class PromptToBotService:
|
|
|
116
120
|
|
|
117
121
|
async def health(self, request: Request) -> HTTPResponse:
|
|
118
122
|
"""Health check endpoint."""
|
|
119
|
-
return response.json({"status": "ok", "service": "
|
|
123
|
+
return response.json({"status": "ok", "service": "bot-builder"})
|
|
120
124
|
|
|
121
|
-
async def handle_prompt_to_bot(self, request: Request) ->
|
|
125
|
+
async def handle_prompt_to_bot(self, request: Request) -> None:
|
|
122
126
|
"""Handle prompt-to-bot generation requests."""
|
|
127
|
+
sse_response = await request.respond(content_type="text/event-stream")
|
|
128
|
+
|
|
123
129
|
try:
|
|
130
|
+
# 1. Received
|
|
131
|
+
await self._send_sse_event(
|
|
132
|
+
sse_response,
|
|
133
|
+
ServerSentEvent(event="received", data={"status": "received"}),
|
|
134
|
+
)
|
|
135
|
+
|
|
124
136
|
# Validate request
|
|
125
137
|
prompt_data = PromptRequest(**request.json)
|
|
126
138
|
|
|
127
|
-
#
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
139
|
+
# 2. Generating
|
|
140
|
+
await self._send_sse_event(
|
|
141
|
+
sse_response,
|
|
142
|
+
ServerSentEvent(event="generating", data={"status": "generating"}),
|
|
131
143
|
)
|
|
132
144
|
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
145
|
+
try:
|
|
146
|
+
# Generate project with retries
|
|
147
|
+
bot_files = await self.project_generator.generate_project_with_retries(
|
|
148
|
+
prompt_data.prompt,
|
|
149
|
+
template=ProjectTemplateName.PLAIN,
|
|
150
|
+
)
|
|
136
151
|
|
|
137
|
-
|
|
138
|
-
|
|
152
|
+
await self._send_sse_event(
|
|
153
|
+
sse_response,
|
|
154
|
+
ServerSentEvent(
|
|
155
|
+
event="generation_success",
|
|
156
|
+
data={"status": "generation_success"},
|
|
157
|
+
),
|
|
158
|
+
)
|
|
139
159
|
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
160
|
+
except (ProjectGenerationError, LLMGenerationError) as e:
|
|
161
|
+
await self._send_sse_event(
|
|
162
|
+
sse_response,
|
|
163
|
+
ServerSentEvent(
|
|
164
|
+
event="generation_error",
|
|
165
|
+
data={"status": "generation_error", "error": str(e)},
|
|
166
|
+
),
|
|
167
|
+
)
|
|
168
|
+
await sse_response.eof()
|
|
169
|
+
return
|
|
145
170
|
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
data={"bot_data": bot_files},
|
|
151
|
-
).model_dump()
|
|
171
|
+
# 3. Training
|
|
172
|
+
await self._send_sse_event(
|
|
173
|
+
sse_response,
|
|
174
|
+
ServerSentEvent(event="training", data={"status": "training"}),
|
|
152
175
|
)
|
|
153
176
|
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
error="Validation failed", details={"validation_error": str(e)}
|
|
159
|
-
).model_dump(),
|
|
160
|
-
status=400,
|
|
161
|
-
)
|
|
177
|
+
try:
|
|
178
|
+
# Train and load agent
|
|
179
|
+
importer = self.project_generator._create_importer()
|
|
180
|
+
self.app.ctx.agent = await train_and_load_agent(importer)
|
|
162
181
|
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
182
|
+
# Update input channel with new agent
|
|
183
|
+
self.input_channel.agent = self.app.ctx.agent
|
|
184
|
+
|
|
185
|
+
await self._send_sse_event(
|
|
186
|
+
sse_response,
|
|
187
|
+
ServerSentEvent(
|
|
188
|
+
event="train_success", data={"status": "train_success"}
|
|
189
|
+
),
|
|
190
|
+
)
|
|
191
|
+
|
|
192
|
+
except TrainingError as e:
|
|
193
|
+
await self._send_sse_event(
|
|
194
|
+
sse_response,
|
|
195
|
+
ServerSentEvent(
|
|
196
|
+
event="train_error",
|
|
197
|
+
data={"status": "train_error", "error": str(e)},
|
|
198
|
+
),
|
|
199
|
+
)
|
|
200
|
+
await sse_response.eof()
|
|
201
|
+
return
|
|
202
|
+
|
|
203
|
+
# 4. Done
|
|
204
|
+
await self._send_sse_event(
|
|
205
|
+
sse_response,
|
|
206
|
+
ServerSentEvent(
|
|
207
|
+
event="done",
|
|
208
|
+
data={
|
|
209
|
+
"status": "done",
|
|
210
|
+
"bot_data": bot_files,
|
|
211
|
+
},
|
|
212
|
+
),
|
|
171
213
|
)
|
|
172
214
|
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
error="Model training failed", details={"training_error": str(e)}
|
|
178
|
-
).model_dump(),
|
|
179
|
-
status=500,
|
|
215
|
+
structlogger.info(
|
|
216
|
+
"bot_builder_service.prompt_to_bot.success",
|
|
217
|
+
client_id=prompt_data.client_id,
|
|
218
|
+
files_generated=list(bot_files.keys()),
|
|
180
219
|
)
|
|
181
220
|
|
|
182
|
-
except
|
|
183
|
-
structlogger.error(
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
221
|
+
except ValidationError as e:
|
|
222
|
+
structlogger.error(
|
|
223
|
+
"bot_builder_service.prompt_to_bot.validation_error", error=str(e)
|
|
224
|
+
)
|
|
225
|
+
await self._send_sse_event(
|
|
226
|
+
sse_response,
|
|
227
|
+
ServerSentEvent(
|
|
228
|
+
event="validation_error",
|
|
229
|
+
data={"status": "validation_error", "error": str(e)},
|
|
230
|
+
),
|
|
189
231
|
)
|
|
190
232
|
|
|
191
233
|
except Exception as e:
|
|
192
|
-
structlogger.error(
|
|
193
|
-
|
|
194
|
-
ApiErrorResponse(
|
|
195
|
-
error="Unexpected error occurred", details=None
|
|
196
|
-
).model_dump(),
|
|
197
|
-
status=500,
|
|
234
|
+
structlogger.error(
|
|
235
|
+
"bot_builder_service.prompt_to_bot.unexpected_error", error=str(e)
|
|
198
236
|
)
|
|
237
|
+
await self._send_sse_event(
|
|
238
|
+
sse_response,
|
|
239
|
+
ServerSentEvent(
|
|
240
|
+
event="error", data={"status": "error", "error": str(e)}
|
|
241
|
+
),
|
|
242
|
+
)
|
|
243
|
+
finally:
|
|
244
|
+
await sse_response.eof()
|
|
199
245
|
|
|
200
|
-
async def handle_template_to_bot(self, request: Request) ->
|
|
246
|
+
async def handle_template_to_bot(self, request: Request) -> None:
|
|
201
247
|
"""Handle template-to-bot generation requests."""
|
|
248
|
+
sse_response = await request.respond(content_type="text/event-stream")
|
|
249
|
+
|
|
202
250
|
try:
|
|
251
|
+
# 1. Received
|
|
252
|
+
await self._send_sse_event(
|
|
253
|
+
sse_response,
|
|
254
|
+
ServerSentEvent(event="received", data={"status": "received"}),
|
|
255
|
+
)
|
|
256
|
+
|
|
203
257
|
# Validate request
|
|
204
258
|
template_data = TemplateRequest(**request.json)
|
|
205
259
|
|
|
206
|
-
#
|
|
207
|
-
self.
|
|
208
|
-
|
|
260
|
+
# 2. Generating
|
|
261
|
+
await self._send_sse_event(
|
|
262
|
+
sse_response,
|
|
263
|
+
ServerSentEvent(event="generating", data={"status": "generating"}),
|
|
209
264
|
)
|
|
210
|
-
bot_files = self.project_generator.get_bot_files()
|
|
211
265
|
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
266
|
+
try:
|
|
267
|
+
# Generate project with retries
|
|
268
|
+
self.project_generator.init_from_template(
|
|
269
|
+
template_data.template_name,
|
|
270
|
+
)
|
|
271
|
+
bot_files = self.project_generator.get_bot_files()
|
|
215
272
|
|
|
216
|
-
|
|
217
|
-
|
|
273
|
+
await self._send_sse_event(
|
|
274
|
+
sse_response,
|
|
275
|
+
ServerSentEvent(
|
|
276
|
+
event="generation_success",
|
|
277
|
+
data={"status": "generation_success"},
|
|
278
|
+
),
|
|
279
|
+
)
|
|
218
280
|
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
281
|
+
except ProjectGenerationError as e:
|
|
282
|
+
await self._send_sse_event(
|
|
283
|
+
sse_response,
|
|
284
|
+
ServerSentEvent(
|
|
285
|
+
event="generation_error",
|
|
286
|
+
data={"status": "generation_error", "error": str(e)},
|
|
287
|
+
),
|
|
288
|
+
)
|
|
289
|
+
await sse_response.eof()
|
|
290
|
+
return
|
|
224
291
|
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
data={"bot_data": bot_files},
|
|
230
|
-
).model_dump()
|
|
292
|
+
# 3. Training
|
|
293
|
+
await self._send_sse_event(
|
|
294
|
+
sse_response,
|
|
295
|
+
ServerSentEvent(event="training", data={"status": "training"}),
|
|
231
296
|
)
|
|
232
297
|
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
error="Validation failed", details={"validation_error": str(e)}
|
|
238
|
-
).model_dump(),
|
|
239
|
-
status=400,
|
|
240
|
-
)
|
|
298
|
+
try:
|
|
299
|
+
# Train and load agent
|
|
300
|
+
importer = self.project_generator._create_importer()
|
|
301
|
+
self.app.ctx.agent = await train_and_load_agent(importer)
|
|
241
302
|
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
303
|
+
# Update input channel with new agent
|
|
304
|
+
self.input_channel.agent = self.app.ctx.agent
|
|
305
|
+
|
|
306
|
+
await self._send_sse_event(
|
|
307
|
+
sse_response,
|
|
308
|
+
ServerSentEvent(
|
|
309
|
+
event="train_success", data={"status": "train_success"}
|
|
310
|
+
),
|
|
311
|
+
)
|
|
312
|
+
|
|
313
|
+
except TrainingError as e:
|
|
314
|
+
await self._send_sse_event(
|
|
315
|
+
sse_response,
|
|
316
|
+
ServerSentEvent(
|
|
317
|
+
event="train_error",
|
|
318
|
+
data={"status": "train_error", "error": str(e)},
|
|
319
|
+
),
|
|
320
|
+
)
|
|
321
|
+
await sse_response.eof()
|
|
322
|
+
return
|
|
323
|
+
|
|
324
|
+
# 4. Done
|
|
325
|
+
await self._send_sse_event(
|
|
326
|
+
sse_response,
|
|
327
|
+
ServerSentEvent(
|
|
328
|
+
event="done",
|
|
329
|
+
data={
|
|
330
|
+
"status": "done",
|
|
331
|
+
"bot_data": bot_files,
|
|
332
|
+
},
|
|
333
|
+
),
|
|
250
334
|
)
|
|
251
335
|
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
error="Model training failed", details={"training_error": str(e)}
|
|
257
|
-
).model_dump(),
|
|
258
|
-
status=500,
|
|
336
|
+
structlogger.info(
|
|
337
|
+
"bot_builder_service.template_to_bot.success",
|
|
338
|
+
client_id=template_data.client_id,
|
|
339
|
+
files_generated=list(bot_files.keys()),
|
|
259
340
|
)
|
|
260
341
|
|
|
261
|
-
except
|
|
262
|
-
structlogger.error(
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
342
|
+
except ValidationError as e:
|
|
343
|
+
structlogger.error(
|
|
344
|
+
"bot_builder_service.template_to_bot.validation_error", error=str(e)
|
|
345
|
+
)
|
|
346
|
+
await self._send_sse_event(
|
|
347
|
+
sse_response,
|
|
348
|
+
ServerSentEvent(
|
|
349
|
+
event="validation_error",
|
|
350
|
+
data={"status": "validation_error", "error": str(e)},
|
|
351
|
+
),
|
|
268
352
|
)
|
|
269
353
|
|
|
270
354
|
except Exception as e:
|
|
271
|
-
structlogger.error(
|
|
272
|
-
|
|
273
|
-
ApiErrorResponse(
|
|
274
|
-
error="Unexpected error occurred", details=None
|
|
275
|
-
).model_dump(),
|
|
276
|
-
status=500,
|
|
355
|
+
structlogger.error(
|
|
356
|
+
"bot_builder_service.template_to_bot.unexpected_error", error=str(e)
|
|
277
357
|
)
|
|
358
|
+
await self._send_sse_event(
|
|
359
|
+
sse_response,
|
|
360
|
+
ServerSentEvent(
|
|
361
|
+
event="error", data={"status": "error", "error": str(e)}
|
|
362
|
+
),
|
|
363
|
+
)
|
|
364
|
+
finally:
|
|
365
|
+
await sse_response.eof()
|
|
278
366
|
|
|
279
367
|
async def get_bot_data(self, request: Request) -> HTTPResponse:
|
|
280
368
|
"""Get current bot data."""
|
|
@@ -410,7 +498,9 @@ class PromptToBotService:
|
|
|
410
498
|
return response.json(llm_response)
|
|
411
499
|
|
|
412
500
|
except LLMGenerationError as e:
|
|
413
|
-
structlogger.error(
|
|
501
|
+
structlogger.error(
|
|
502
|
+
"bot_builder_service.llm_builder.generation_error", error=str(e)
|
|
503
|
+
)
|
|
414
504
|
return response.json(
|
|
415
505
|
ApiErrorResponse(
|
|
416
506
|
error="LLM helper generation failed", details={"llm_error": str(e)}
|
|
@@ -419,7 +509,9 @@ class PromptToBotService:
|
|
|
419
509
|
)
|
|
420
510
|
|
|
421
511
|
except Exception as e:
|
|
422
|
-
structlogger.error(
|
|
512
|
+
structlogger.error(
|
|
513
|
+
"bot_builder_service.llm_builder.unexpected_error", error=str(e)
|
|
514
|
+
)
|
|
423
515
|
return response.json(
|
|
424
516
|
ApiErrorResponse(
|
|
425
517
|
error="Unexpected error in LLM builder",
|
rasa/cli/scaffold.py
CHANGED
|
@@ -178,6 +178,8 @@ def create_initial_project(
|
|
|
178
178
|
# https://stackoverflow.com/questions/9160227/dir-util-copy-tree-fails-after-shutil-rmtree
|
|
179
179
|
if hasattr(dir_util, "_path_created"):
|
|
180
180
|
dir_util._path_created.clear()
|
|
181
|
+
else:
|
|
182
|
+
dir_util.SkipRepeatAbsolutePaths.clear()
|
|
181
183
|
dir_util.copy_tree(scaffold_path(template), path)
|
|
182
184
|
|
|
183
185
|
|
rasa/version.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: rasa-pro
|
|
3
|
-
Version: 3.13.
|
|
3
|
+
Version: 3.13.1a12
|
|
4
4
|
Summary: State-of-the-art open-core Conversational AI framework for Enterprises that natively leverages generative AI for effortless assistant development.
|
|
5
5
|
Keywords: nlp,machine-learning,machine-learning-library,bot,bots,botkit,rasa conversational-agents,conversational-ai,chatbot,chatbot-framework,bot-framework
|
|
6
6
|
Author: Rasa Technologies GmbH
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
rasa/__init__.py,sha256=YXG8RzVxiSJ__v-AewtV453YoCbmzWlHsU_4S0O2XpE,206
|
|
2
2
|
rasa/__main__.py,sha256=-PZSicdimOUsU-dkWu3x6eY1G6P8VwqZvB1ag02PoE8,6418
|
|
3
3
|
rasa/api.py,sha256=RY3SqtlOcdq4YZGgr6DOm-nUBpiA8l8uguUZOctL_7o,6320
|
|
4
|
-
rasa/builder/README.md,sha256=
|
|
4
|
+
rasa/builder/README.md,sha256=7WYioSzBHFY25h1QCFellv7bIOW9VLH7Gf7dwQEc1k0,3715
|
|
5
5
|
rasa/builder/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
6
6
|
rasa/builder/config.py,sha256=j1pP1nC5a2_iZMaU9qgjhbuPACSayzS_UrfTriAfPzM,2202
|
|
7
7
|
rasa/builder/create_openai_vector_store.py,sha256=jAk1QzM4HiC0wjkn1031xBzLFGwVV4JUJMc50QZFIdw,6642
|
|
@@ -11,11 +11,11 @@ rasa/builder/llm_context.py,sha256=zy7htrXgS_QWJWeEj4TfseQgTI65whFJR_4GKm_iOvE,2
|
|
|
11
11
|
rasa/builder/llm_helper_prompt.jinja2,sha256=AhfEzXYIMTmWgd2TgVmPVeCfojHA29IiuO6JhTOXXKY,9585
|
|
12
12
|
rasa/builder/llm_service.py,sha256=tFtIno9V5Fq2idJ2uJt8K9b3GeO9ic2ZWWYg3rKdufw,11480
|
|
13
13
|
rasa/builder/logging_utils.py,sha256=iPJoN2HhNlS14SKyZv0s0iIljrmP6A8s8C5btoDVOXM,1383
|
|
14
|
-
rasa/builder/main.py,sha256=
|
|
14
|
+
rasa/builder/main.py,sha256=1UUaBf9SUbuxDmS_bLgF5vxsiRNr_N1EOtZGYYzss1I,1601
|
|
15
15
|
rasa/builder/models.py,sha256=IFsVCTIE3cUeuwxZ0MHgB9jD8T354fPPh86bZ0QrGBg,4494
|
|
16
16
|
rasa/builder/project_generator.py,sha256=ZWsL3oqAIYIqJBJ8GJsLmMotgbF0ZOOMO1dQSz4xlYs,10868
|
|
17
17
|
rasa/builder/scrape_rasa_docs.py,sha256=HukkTCIh1rMCE8D_EtXGHy0aHtFBVrVTT_6Wpex3XQM,2428
|
|
18
|
-
rasa/builder/service.py,sha256=
|
|
18
|
+
rasa/builder/service.py,sha256=YpVhK8HQxK9l8MFf70hK9U5cYp8GGMYvvLr4Lq0Co8I,19252
|
|
19
19
|
rasa/builder/skill_to_bot_prompt.jinja2,sha256=h2Fgoh9k3XinN0blEEqMuOWuvwXxJifP3GJs-GczgBU,5530
|
|
20
20
|
rasa/builder/training_service.py,sha256=YSVaf6x9WuddrOruJ5BmacnRoypQVVuKZbvZq_c6xEE,3849
|
|
21
21
|
rasa/builder/validation_service.py,sha256=rKMgbG8Jyv8WMnTIXOMd7VuGWAYicrL9wDJ22BJXZHE,2765
|
|
@@ -277,7 +277,7 @@ rasa/cli/project_templates/tutorial/data/patterns.yml,sha256=phj1vrOcAacwzdVHFHN
|
|
|
277
277
|
rasa/cli/project_templates/tutorial/domain.yml,sha256=X16UwfoTNKSV2DYvEQZ-CfRczzg5MqI49AHgSH0-aZs,974
|
|
278
278
|
rasa/cli/project_templates/tutorial/endpoints.yml,sha256=ZZfchpZLo5MObU5JVXPqBi8KrKe8gzsZskSDAjpfS9E,1788
|
|
279
279
|
rasa/cli/run.py,sha256=QnmVCXORZambJzee1z3wMa3Ki8cPwSsImgQ2hbvbpuU,4632
|
|
280
|
-
rasa/cli/scaffold.py,sha256=
|
|
280
|
+
rasa/cli/scaffold.py,sha256=_r6LlS4XQ_vZjcEzkP90V1KGrDaPFVflzhMIKGoVGGM,8726
|
|
281
281
|
rasa/cli/shell.py,sha256=YTXn3_iDWJySY187BEJTRDxPoG-mqRtl17jqwqQ6hX4,4332
|
|
282
282
|
rasa/cli/studio/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
283
283
|
rasa/cli/studio/download.py,sha256=5uLdnW60JQ1NkUcJfK_be2pKjVOtYzCCjNAQpfGkYnM,1163
|
|
@@ -1064,9 +1064,9 @@ rasa/utils/train_utils.py,sha256=ClJx-6x3-h3Vt6mskacgkcCUJTMXjFPe3zAcy_DfmaU,212
|
|
|
1064
1064
|
rasa/utils/url_tools.py,sha256=dZ1HGkVdWTJB7zYEdwoDIrEuyX9HE5WsxKKFVsXBLE0,1218
|
|
1065
1065
|
rasa/utils/yaml.py,sha256=KjbZq5C94ZP7Jdsw8bYYF7HASI6K4-C_kdHfrnPLpSI,2000
|
|
1066
1066
|
rasa/validator.py,sha256=IRhLfcgCpps0wSpokOvUGNaY8t8GsmeSmPOUVRKeOeE,83087
|
|
1067
|
-
rasa/version.py,sha256=
|
|
1068
|
-
rasa_pro-3.13.
|
|
1069
|
-
rasa_pro-3.13.
|
|
1070
|
-
rasa_pro-3.13.
|
|
1071
|
-
rasa_pro-3.13.
|
|
1072
|
-
rasa_pro-3.13.
|
|
1067
|
+
rasa/version.py,sha256=EOvwRH_ZdAavpBA4bcQ7NwBtPoPX4LPPjQhA6ru8y8Y,120
|
|
1068
|
+
rasa_pro-3.13.1a12.dist-info/METADATA,sha256=KkHYzwkHiQwJnCHPOw_BJCS86TogyDwj03j6sJqXn4c,10556
|
|
1069
|
+
rasa_pro-3.13.1a12.dist-info/NOTICE,sha256=7HlBoMHJY9CL2GlYSfTQ-PZsVmLmVkYmMiPlTjhuCqA,218
|
|
1070
|
+
rasa_pro-3.13.1a12.dist-info/WHEEL,sha256=fGIA9gx4Qxk2KDKeNJCbOEwSrmLtjWCwzBz351GyrPQ,88
|
|
1071
|
+
rasa_pro-3.13.1a12.dist-info/entry_points.txt,sha256=ckJ2SfEyTPgBqj_I6vm_tqY9dZF_LAPJZA335Xp0Q9U,43
|
|
1072
|
+
rasa_pro-3.13.1a12.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|