edsl 0.1.15__py3-none-any.whl → 0.1.40__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.
- edsl/Base.py +348 -38
- edsl/BaseDiff.py +260 -0
- edsl/TemplateLoader.py +24 -0
- edsl/__init__.py +45 -10
- edsl/__version__.py +1 -1
- edsl/agents/Agent.py +842 -144
- edsl/agents/AgentList.py +521 -25
- edsl/agents/Invigilator.py +250 -374
- edsl/agents/InvigilatorBase.py +257 -0
- edsl/agents/PromptConstructor.py +272 -0
- edsl/agents/QuestionInstructionPromptBuilder.py +128 -0
- edsl/agents/QuestionTemplateReplacementsBuilder.py +137 -0
- edsl/agents/descriptors.py +43 -13
- edsl/agents/prompt_helpers.py +129 -0
- edsl/agents/question_option_processor.py +172 -0
- edsl/auto/AutoStudy.py +130 -0
- edsl/auto/StageBase.py +243 -0
- edsl/auto/StageGenerateSurvey.py +178 -0
- edsl/auto/StageLabelQuestions.py +125 -0
- edsl/auto/StagePersona.py +61 -0
- edsl/auto/StagePersonaDimensionValueRanges.py +88 -0
- edsl/auto/StagePersonaDimensionValues.py +74 -0
- edsl/auto/StagePersonaDimensions.py +69 -0
- edsl/auto/StageQuestions.py +74 -0
- edsl/auto/SurveyCreatorPipeline.py +21 -0
- edsl/auto/utilities.py +218 -0
- edsl/base/Base.py +279 -0
- edsl/config.py +115 -113
- edsl/conversation/Conversation.py +290 -0
- edsl/conversation/car_buying.py +59 -0
- edsl/conversation/chips.py +95 -0
- edsl/conversation/mug_negotiation.py +81 -0
- edsl/conversation/next_speaker_utilities.py +93 -0
- edsl/coop/CoopFunctionsMixin.py +15 -0
- edsl/coop/ExpectedParrotKeyHandler.py +125 -0
- edsl/coop/PriceFetcher.py +54 -0
- edsl/coop/__init__.py +1 -0
- edsl/coop/coop.py +1029 -134
- edsl/coop/utils.py +131 -0
- edsl/data/Cache.py +560 -89
- edsl/data/CacheEntry.py +230 -0
- edsl/data/CacheHandler.py +168 -0
- edsl/data/RemoteCacheSync.py +186 -0
- edsl/data/SQLiteDict.py +292 -0
- edsl/data/__init__.py +5 -3
- edsl/data/orm.py +6 -33
- edsl/data_transfer_models.py +74 -27
- edsl/enums.py +165 -8
- edsl/exceptions/BaseException.py +21 -0
- edsl/exceptions/__init__.py +52 -46
- edsl/exceptions/agents.py +33 -15
- edsl/exceptions/cache.py +5 -0
- edsl/exceptions/coop.py +8 -0
- edsl/exceptions/general.py +34 -0
- edsl/exceptions/inference_services.py +5 -0
- edsl/exceptions/jobs.py +15 -0
- edsl/exceptions/language_models.py +46 -1
- edsl/exceptions/questions.py +80 -5
- edsl/exceptions/results.py +16 -5
- edsl/exceptions/scenarios.py +29 -0
- edsl/exceptions/surveys.py +13 -10
- edsl/inference_services/AnthropicService.py +106 -0
- edsl/inference_services/AvailableModelCacheHandler.py +184 -0
- edsl/inference_services/AvailableModelFetcher.py +215 -0
- edsl/inference_services/AwsBedrock.py +118 -0
- edsl/inference_services/AzureAI.py +215 -0
- edsl/inference_services/DeepInfraService.py +18 -0
- edsl/inference_services/GoogleService.py +143 -0
- edsl/inference_services/GroqService.py +20 -0
- edsl/inference_services/InferenceServiceABC.py +80 -0
- edsl/inference_services/InferenceServicesCollection.py +138 -0
- edsl/inference_services/MistralAIService.py +120 -0
- edsl/inference_services/OllamaService.py +18 -0
- edsl/inference_services/OpenAIService.py +236 -0
- edsl/inference_services/PerplexityService.py +160 -0
- edsl/inference_services/ServiceAvailability.py +135 -0
- edsl/inference_services/TestService.py +90 -0
- edsl/inference_services/TogetherAIService.py +172 -0
- edsl/inference_services/data_structures.py +134 -0
- edsl/inference_services/models_available_cache.py +118 -0
- edsl/inference_services/rate_limits_cache.py +25 -0
- edsl/inference_services/registry.py +41 -0
- edsl/inference_services/write_available.py +10 -0
- edsl/jobs/AnswerQuestionFunctionConstructor.py +223 -0
- edsl/jobs/Answers.py +21 -20
- edsl/jobs/FetchInvigilator.py +47 -0
- edsl/jobs/InterviewTaskManager.py +98 -0
- edsl/jobs/InterviewsConstructor.py +50 -0
- edsl/jobs/Jobs.py +684 -206
- edsl/jobs/JobsChecks.py +172 -0
- edsl/jobs/JobsComponentConstructor.py +189 -0
- edsl/jobs/JobsPrompts.py +270 -0
- edsl/jobs/JobsRemoteInferenceHandler.py +311 -0
- edsl/jobs/JobsRemoteInferenceLogger.py +239 -0
- edsl/jobs/RequestTokenEstimator.py +30 -0
- edsl/jobs/async_interview_runner.py +138 -0
- edsl/jobs/buckets/BucketCollection.py +104 -0
- edsl/jobs/buckets/ModelBuckets.py +65 -0
- edsl/jobs/buckets/TokenBucket.py +283 -0
- edsl/jobs/buckets/TokenBucketAPI.py +211 -0
- edsl/jobs/buckets/TokenBucketClient.py +191 -0
- edsl/jobs/check_survey_scenario_compatibility.py +85 -0
- edsl/jobs/data_structures.py +120 -0
- edsl/jobs/decorators.py +35 -0
- edsl/jobs/interviews/Interview.py +392 -0
- edsl/jobs/interviews/InterviewExceptionCollection.py +99 -0
- edsl/jobs/interviews/InterviewExceptionEntry.py +186 -0
- edsl/jobs/interviews/InterviewStatistic.py +63 -0
- edsl/jobs/interviews/InterviewStatisticsCollection.py +25 -0
- edsl/jobs/interviews/InterviewStatusDictionary.py +78 -0
- edsl/jobs/interviews/InterviewStatusLog.py +92 -0
- edsl/jobs/interviews/ReportErrors.py +66 -0
- edsl/jobs/interviews/interview_status_enum.py +9 -0
- edsl/jobs/jobs_status_enums.py +9 -0
- edsl/jobs/loggers/HTMLTableJobLogger.py +304 -0
- edsl/jobs/results_exceptions_handler.py +98 -0
- edsl/jobs/runners/JobsRunnerAsyncio.py +151 -110
- edsl/jobs/runners/JobsRunnerStatus.py +298 -0
- edsl/jobs/tasks/QuestionTaskCreator.py +244 -0
- edsl/jobs/tasks/TaskCreators.py +64 -0
- edsl/jobs/tasks/TaskHistory.py +470 -0
- edsl/jobs/tasks/TaskStatusLog.py +23 -0
- edsl/jobs/tasks/task_status_enum.py +161 -0
- edsl/jobs/tokens/InterviewTokenUsage.py +27 -0
- edsl/jobs/tokens/TokenUsage.py +34 -0
- edsl/language_models/ComputeCost.py +63 -0
- edsl/language_models/LanguageModel.py +507 -386
- edsl/language_models/ModelList.py +164 -0
- edsl/language_models/PriceManager.py +127 -0
- edsl/language_models/RawResponseHandler.py +106 -0
- edsl/language_models/RegisterLanguageModelsMeta.py +184 -0
- edsl/language_models/__init__.py +1 -8
- edsl/language_models/fake_openai_call.py +15 -0
- edsl/language_models/fake_openai_service.py +61 -0
- edsl/language_models/key_management/KeyLookup.py +63 -0
- edsl/language_models/key_management/KeyLookupBuilder.py +273 -0
- edsl/language_models/key_management/KeyLookupCollection.py +38 -0
- edsl/language_models/key_management/__init__.py +0 -0
- edsl/language_models/key_management/models.py +131 -0
- edsl/language_models/model.py +256 -0
- edsl/language_models/repair.py +109 -41
- edsl/language_models/utilities.py +65 -0
- edsl/notebooks/Notebook.py +263 -0
- edsl/notebooks/NotebookToLaTeX.py +142 -0
- edsl/notebooks/__init__.py +1 -0
- edsl/prompts/Prompt.py +222 -93
- edsl/prompts/__init__.py +1 -1
- edsl/questions/ExceptionExplainer.py +77 -0
- edsl/questions/HTMLQuestion.py +103 -0
- edsl/questions/QuestionBase.py +518 -0
- edsl/questions/QuestionBasePromptsMixin.py +221 -0
- edsl/questions/QuestionBudget.py +164 -67
- edsl/questions/QuestionCheckBox.py +281 -62
- edsl/questions/QuestionDict.py +343 -0
- edsl/questions/QuestionExtract.py +136 -50
- edsl/questions/QuestionFreeText.py +79 -55
- edsl/questions/QuestionFunctional.py +138 -41
- edsl/questions/QuestionList.py +184 -57
- edsl/questions/QuestionMatrix.py +265 -0
- edsl/questions/QuestionMultipleChoice.py +293 -69
- edsl/questions/QuestionNumerical.py +109 -56
- edsl/questions/QuestionRank.py +244 -49
- edsl/questions/Quick.py +41 -0
- edsl/questions/SimpleAskMixin.py +74 -0
- edsl/questions/__init__.py +9 -6
- edsl/questions/{AnswerValidatorMixin.py → answer_validator_mixin.py} +153 -38
- edsl/questions/compose_questions.py +13 -7
- edsl/questions/data_structures.py +20 -0
- edsl/questions/decorators.py +21 -0
- edsl/questions/derived/QuestionLikertFive.py +28 -26
- edsl/questions/derived/QuestionLinearScale.py +41 -28
- edsl/questions/derived/QuestionTopK.py +34 -26
- edsl/questions/derived/QuestionYesNo.py +40 -27
- edsl/questions/descriptors.py +228 -74
- edsl/questions/loop_processor.py +149 -0
- edsl/questions/prompt_templates/question_budget.jinja +13 -0
- edsl/questions/prompt_templates/question_checkbox.jinja +32 -0
- edsl/questions/prompt_templates/question_extract.jinja +11 -0
- edsl/questions/prompt_templates/question_free_text.jinja +3 -0
- edsl/questions/prompt_templates/question_linear_scale.jinja +11 -0
- edsl/questions/prompt_templates/question_list.jinja +17 -0
- edsl/questions/prompt_templates/question_multiple_choice.jinja +33 -0
- edsl/questions/prompt_templates/question_numerical.jinja +37 -0
- edsl/questions/question_base_gen_mixin.py +168 -0
- edsl/questions/question_registry.py +130 -46
- edsl/questions/register_questions_meta.py +71 -0
- edsl/questions/response_validator_abc.py +188 -0
- edsl/questions/response_validator_factory.py +34 -0
- edsl/questions/settings.py +5 -2
- edsl/questions/templates/__init__.py +0 -0
- edsl/questions/templates/budget/__init__.py +0 -0
- edsl/questions/templates/budget/answering_instructions.jinja +7 -0
- edsl/questions/templates/budget/question_presentation.jinja +7 -0
- edsl/questions/templates/checkbox/__init__.py +0 -0
- edsl/questions/templates/checkbox/answering_instructions.jinja +10 -0
- edsl/questions/templates/checkbox/question_presentation.jinja +22 -0
- edsl/questions/templates/dict/__init__.py +0 -0
- edsl/questions/templates/dict/answering_instructions.jinja +21 -0
- edsl/questions/templates/dict/question_presentation.jinja +1 -0
- edsl/questions/templates/extract/__init__.py +0 -0
- edsl/questions/templates/extract/answering_instructions.jinja +7 -0
- edsl/questions/templates/extract/question_presentation.jinja +1 -0
- edsl/questions/templates/free_text/__init__.py +0 -0
- edsl/questions/templates/free_text/answering_instructions.jinja +0 -0
- edsl/questions/templates/free_text/question_presentation.jinja +1 -0
- edsl/questions/templates/likert_five/__init__.py +0 -0
- edsl/questions/templates/likert_five/answering_instructions.jinja +10 -0
- edsl/questions/templates/likert_five/question_presentation.jinja +12 -0
- edsl/questions/templates/linear_scale/__init__.py +0 -0
- edsl/questions/templates/linear_scale/answering_instructions.jinja +5 -0
- edsl/questions/templates/linear_scale/question_presentation.jinja +5 -0
- edsl/questions/templates/list/__init__.py +0 -0
- edsl/questions/templates/list/answering_instructions.jinja +4 -0
- edsl/questions/templates/list/question_presentation.jinja +5 -0
- edsl/questions/templates/matrix/__init__.py +1 -0
- edsl/questions/templates/matrix/answering_instructions.jinja +5 -0
- edsl/questions/templates/matrix/question_presentation.jinja +20 -0
- edsl/questions/templates/multiple_choice/__init__.py +0 -0
- edsl/questions/templates/multiple_choice/answering_instructions.jinja +9 -0
- edsl/questions/templates/multiple_choice/html.jinja +0 -0
- edsl/questions/templates/multiple_choice/question_presentation.jinja +12 -0
- edsl/questions/templates/numerical/__init__.py +0 -0
- edsl/questions/templates/numerical/answering_instructions.jinja +7 -0
- edsl/questions/templates/numerical/question_presentation.jinja +7 -0
- edsl/questions/templates/rank/__init__.py +0 -0
- edsl/questions/templates/rank/answering_instructions.jinja +11 -0
- edsl/questions/templates/rank/question_presentation.jinja +15 -0
- edsl/questions/templates/top_k/__init__.py +0 -0
- edsl/questions/templates/top_k/answering_instructions.jinja +8 -0
- edsl/questions/templates/top_k/question_presentation.jinja +22 -0
- edsl/questions/templates/yes_no/__init__.py +0 -0
- edsl/questions/templates/yes_no/answering_instructions.jinja +6 -0
- edsl/questions/templates/yes_no/question_presentation.jinja +12 -0
- edsl/results/CSSParameterizer.py +108 -0
- edsl/results/Dataset.py +550 -19
- edsl/results/DatasetExportMixin.py +594 -0
- edsl/results/DatasetTree.py +295 -0
- edsl/results/MarkdownToDocx.py +122 -0
- edsl/results/MarkdownToPDF.py +111 -0
- edsl/results/Result.py +477 -173
- edsl/results/Results.py +987 -269
- edsl/results/ResultsExportMixin.py +28 -125
- edsl/results/ResultsGGMixin.py +83 -15
- edsl/results/TableDisplay.py +125 -0
- edsl/results/TextEditor.py +50 -0
- edsl/results/__init__.py +1 -1
- edsl/results/file_exports.py +252 -0
- edsl/results/results_fetch_mixin.py +33 -0
- edsl/results/results_selector.py +145 -0
- edsl/results/results_tools_mixin.py +98 -0
- edsl/results/smart_objects.py +96 -0
- edsl/results/table_data_class.py +12 -0
- edsl/results/table_display.css +78 -0
- edsl/results/table_renderers.py +118 -0
- edsl/results/tree_explore.py +115 -0
- edsl/scenarios/ConstructDownloadLink.py +109 -0
- edsl/scenarios/DocumentChunker.py +102 -0
- edsl/scenarios/DocxScenario.py +16 -0
- edsl/scenarios/FileStore.py +543 -0
- edsl/scenarios/PdfExtractor.py +40 -0
- edsl/scenarios/Scenario.py +431 -62
- edsl/scenarios/ScenarioHtmlMixin.py +65 -0
- edsl/scenarios/ScenarioList.py +1415 -45
- edsl/scenarios/ScenarioListExportMixin.py +45 -0
- edsl/scenarios/ScenarioListPdfMixin.py +239 -0
- edsl/scenarios/__init__.py +2 -0
- edsl/scenarios/directory_scanner.py +96 -0
- edsl/scenarios/file_methods.py +85 -0
- edsl/scenarios/handlers/__init__.py +13 -0
- edsl/scenarios/handlers/csv.py +49 -0
- edsl/scenarios/handlers/docx.py +76 -0
- edsl/scenarios/handlers/html.py +37 -0
- edsl/scenarios/handlers/json.py +111 -0
- edsl/scenarios/handlers/latex.py +5 -0
- edsl/scenarios/handlers/md.py +51 -0
- edsl/scenarios/handlers/pdf.py +68 -0
- edsl/scenarios/handlers/png.py +39 -0
- edsl/scenarios/handlers/pptx.py +105 -0
- edsl/scenarios/handlers/py.py +294 -0
- edsl/scenarios/handlers/sql.py +313 -0
- edsl/scenarios/handlers/sqlite.py +149 -0
- edsl/scenarios/handlers/txt.py +33 -0
- edsl/scenarios/scenario_join.py +131 -0
- edsl/scenarios/scenario_selector.py +156 -0
- edsl/shared.py +1 -0
- edsl/study/ObjectEntry.py +173 -0
- edsl/study/ProofOfWork.py +113 -0
- edsl/study/SnapShot.py +80 -0
- edsl/study/Study.py +521 -0
- edsl/study/__init__.py +4 -0
- edsl/surveys/ConstructDAG.py +92 -0
- edsl/surveys/DAG.py +92 -11
- edsl/surveys/EditSurvey.py +221 -0
- edsl/surveys/InstructionHandler.py +100 -0
- edsl/surveys/Memory.py +9 -4
- edsl/surveys/MemoryManagement.py +72 -0
- edsl/surveys/MemoryPlan.py +156 -35
- edsl/surveys/Rule.py +221 -74
- edsl/surveys/RuleCollection.py +241 -61
- edsl/surveys/RuleManager.py +172 -0
- edsl/surveys/Simulator.py +75 -0
- edsl/surveys/Survey.py +1079 -339
- edsl/surveys/SurveyCSS.py +273 -0
- edsl/surveys/SurveyExportMixin.py +235 -40
- edsl/surveys/SurveyFlowVisualization.py +181 -0
- edsl/surveys/SurveyQualtricsImport.py +284 -0
- edsl/surveys/SurveyToApp.py +141 -0
- edsl/surveys/__init__.py +4 -2
- edsl/surveys/base.py +19 -3
- edsl/surveys/descriptors.py +17 -6
- edsl/surveys/instructions/ChangeInstruction.py +48 -0
- edsl/surveys/instructions/Instruction.py +56 -0
- edsl/surveys/instructions/InstructionCollection.py +82 -0
- edsl/surveys/instructions/__init__.py +0 -0
- edsl/templates/error_reporting/base.html +24 -0
- edsl/templates/error_reporting/exceptions_by_model.html +35 -0
- edsl/templates/error_reporting/exceptions_by_question_name.html +17 -0
- edsl/templates/error_reporting/exceptions_by_type.html +17 -0
- edsl/templates/error_reporting/interview_details.html +116 -0
- edsl/templates/error_reporting/interviews.html +19 -0
- edsl/templates/error_reporting/overview.html +5 -0
- edsl/templates/error_reporting/performance_plot.html +2 -0
- edsl/templates/error_reporting/report.css +74 -0
- edsl/templates/error_reporting/report.html +118 -0
- edsl/templates/error_reporting/report.js +25 -0
- edsl/tools/__init__.py +1 -0
- edsl/tools/clusters.py +192 -0
- edsl/tools/embeddings.py +27 -0
- edsl/tools/embeddings_plotting.py +118 -0
- edsl/tools/plotting.py +112 -0
- edsl/tools/summarize.py +18 -0
- edsl/utilities/PrettyList.py +56 -0
- edsl/utilities/SystemInfo.py +5 -0
- edsl/utilities/__init__.py +21 -20
- edsl/utilities/ast_utilities.py +3 -0
- edsl/utilities/data/Registry.py +2 -0
- edsl/utilities/decorators.py +41 -0
- edsl/utilities/gcp_bucket/__init__.py +0 -0
- edsl/utilities/gcp_bucket/cloud_storage.py +96 -0
- edsl/utilities/interface.py +310 -60
- edsl/utilities/is_notebook.py +18 -0
- edsl/utilities/is_valid_variable_name.py +11 -0
- edsl/utilities/naming_utilities.py +263 -0
- edsl/utilities/remove_edsl_version.py +24 -0
- edsl/utilities/repair_functions.py +28 -0
- edsl/utilities/restricted_python.py +70 -0
- edsl/utilities/utilities.py +203 -13
- edsl-0.1.40.dist-info/METADATA +111 -0
- edsl-0.1.40.dist-info/RECORD +362 -0
- {edsl-0.1.15.dist-info → edsl-0.1.40.dist-info}/WHEEL +1 -1
- edsl/agents/AgentListExportMixin.py +0 -24
- edsl/coop/old.py +0 -31
- edsl/data/Database.py +0 -141
- edsl/data/crud.py +0 -121
- edsl/jobs/Interview.py +0 -435
- edsl/jobs/JobsRunner.py +0 -63
- edsl/jobs/JobsRunnerStatusMixin.py +0 -115
- edsl/jobs/base.py +0 -47
- edsl/jobs/buckets.py +0 -178
- edsl/jobs/runners/JobsRunnerDryRun.py +0 -19
- edsl/jobs/runners/JobsRunnerStreaming.py +0 -54
- edsl/jobs/task_management.py +0 -215
- edsl/jobs/token_tracking.py +0 -78
- edsl/language_models/DeepInfra.py +0 -69
- edsl/language_models/OpenAI.py +0 -98
- edsl/language_models/model_interfaces/GeminiPro.py +0 -66
- edsl/language_models/model_interfaces/LanguageModelOpenAIFour.py +0 -8
- edsl/language_models/model_interfaces/LanguageModelOpenAIThreeFiveTurbo.py +0 -8
- edsl/language_models/model_interfaces/LlamaTwo13B.py +0 -21
- edsl/language_models/model_interfaces/LlamaTwo70B.py +0 -21
- edsl/language_models/model_interfaces/Mixtral8x7B.py +0 -24
- edsl/language_models/registry.py +0 -81
- edsl/language_models/schemas.py +0 -15
- edsl/language_models/unused/ReplicateBase.py +0 -83
- edsl/prompts/QuestionInstructionsBase.py +0 -6
- edsl/prompts/library/agent_instructions.py +0 -29
- edsl/prompts/library/agent_persona.py +0 -17
- edsl/prompts/library/question_budget.py +0 -26
- edsl/prompts/library/question_checkbox.py +0 -32
- edsl/prompts/library/question_extract.py +0 -19
- edsl/prompts/library/question_freetext.py +0 -14
- edsl/prompts/library/question_linear_scale.py +0 -20
- edsl/prompts/library/question_list.py +0 -22
- edsl/prompts/library/question_multiple_choice.py +0 -44
- edsl/prompts/library/question_numerical.py +0 -31
- edsl/prompts/library/question_rank.py +0 -21
- edsl/prompts/prompt_config.py +0 -33
- edsl/prompts/registry.py +0 -185
- edsl/questions/Question.py +0 -240
- edsl/report/InputOutputDataTypes.py +0 -134
- edsl/report/RegressionMixin.py +0 -28
- edsl/report/ReportOutputs.py +0 -1228
- edsl/report/ResultsFetchMixin.py +0 -106
- edsl/report/ResultsOutputMixin.py +0 -14
- edsl/report/demo.ipynb +0 -645
- edsl/results/ResultsDBMixin.py +0 -184
- edsl/surveys/SurveyFlowVisualizationMixin.py +0 -92
- edsl/trackers/Tracker.py +0 -91
- edsl/trackers/TrackerAPI.py +0 -196
- edsl/trackers/TrackerTasks.py +0 -70
- edsl/utilities/pastebin.py +0 -141
- edsl-0.1.15.dist-info/METADATA +0 -69
- edsl-0.1.15.dist-info/RECORD +0 -142
- /edsl/{language_models/model_interfaces → inference_services}/__init__.py +0 -0
- /edsl/{report/__init__.py → jobs/runners/JobsRunnerStatusData.py} +0 -0
- /edsl/{trackers/__init__.py → language_models/ServiceDataSources.py} +0 -0
- {edsl-0.1.15.dist-info → edsl-0.1.40.dist-info}/LICENSE +0 -0
@@ -0,0 +1,362 @@
|
|
1
|
+
edsl/Base.py,sha256=-U6ngLZJDqImrAwF-TSmYzMESre0CG5rq9ZFxFh31sY,12864
|
2
|
+
edsl/BaseDiff.py,sha256=92BirXj2u3TEGHJWni9TBsvZjvq8wpb4wDL2vxX9Lb0,8253
|
3
|
+
edsl/TemplateLoader.py,sha256=sDBlSMt7EfOduM7w3h6v03gvh_Rzn9hVrlS-iLSQdZA,849
|
4
|
+
edsl/__init__.py,sha256=iB5q_P2pXDV6Wb5oHKsFDhi_rJXID0aaqio1I98dwXA,1936
|
5
|
+
edsl/__version__.py,sha256=bRKE9C91TYGzTq0wxI4905SCxXVaXJVP1EuahhGjfCQ,23
|
6
|
+
edsl/agents/Agent.py,sha256=lF7GD_bCvRLP4hrtm3w451AUfuJln5jZHGYBH84CMVE,40741
|
7
|
+
edsl/agents/AgentList.py,sha256=iRfQfyUYtaJbJ3sRubPqPKRr77nKQgzhFEeZ0wcAEk0,18955
|
8
|
+
edsl/agents/Invigilator.py,sha256=ITQtYsbqFL1DTBZZJ68ij5AZkKH4-Ib9tHjiIoLojDg,11954
|
9
|
+
edsl/agents/InvigilatorBase.py,sha256=JIRy7uogI8Hsv8nx8J2zMnd4XK-WQETlSAzkU6uIYNw,8967
|
10
|
+
edsl/agents/PromptConstructor.py,sha256=orYFJI5Teh47cVJSJ63R8lfcAKSaDclSVX_OVTiqEgw,10752
|
11
|
+
edsl/agents/QuestionInstructionPromptBuilder.py,sha256=t7Yuhvzq0cYbcRxzSOv_bvT3ihlmlyAOsScDMWg9A2M,4526
|
12
|
+
edsl/agents/QuestionTemplateReplacementsBuilder.py,sha256=1vOt_zsreGRJaO9c6NO82WRIULxHUHButUd_MzpYCnE,5317
|
13
|
+
edsl/agents/__init__.py,sha256=a3H1lxDwu9HR8fwh79C5DgxPSFv_bE2rzQ6y1D8Ba5c,80
|
14
|
+
edsl/agents/descriptors.py,sha256=JxM_ckzhDmfZT1igSUdCxgyQcCK0o9MhU5jbLIned9g,3189
|
15
|
+
edsl/agents/prompt_helpers.py,sha256=Ylo0Y1UVl34ImP76DnMchdL4PTzpYQUWWbtQwDlE_s4,5028
|
16
|
+
edsl/agents/question_option_processor.py,sha256=q6g5B3E4Q9gWBtFCRqcXHaSxaGfWLqbKB2EXxqzihRk,6345
|
17
|
+
edsl/auto/AutoStudy.py,sha256=XniD-g7jg19vbD5CWqq0QAiMsIz2CboKAAIluDODqzo,4326
|
18
|
+
edsl/auto/StageBase.py,sha256=7ZjV0T-8FQBL-r5LeAozNQY_0RJ_GySdX48ToM7-dLc,8254
|
19
|
+
edsl/auto/StageGenerateSurvey.py,sha256=_lC1-hhFjqd6md1-RE9uEOPtZp7dZHxJn0ERpszSfow,7394
|
20
|
+
edsl/auto/StageLabelQuestions.py,sha256=8uHrDi6t-o_NgumfguiCENsNU3rmYF4nmanTMEtbkYI,4663
|
21
|
+
edsl/auto/StagePersona.py,sha256=1oqHedJGmT1E0F5F-5uq36SudkP7d4FHDd8mbmb5hOw,1886
|
22
|
+
edsl/auto/StagePersonaDimensionValueRanges.py,sha256=z_fJJK4vydId13IVQnI92RUoDQkl6Tr9XxUOMNrKyYI,2933
|
23
|
+
edsl/auto/StagePersonaDimensionValues.py,sha256=o6xUVkYLa1wooY5mDmy1j8bGQbK4EzUZ-Zqi7Lfv1hI,2313
|
24
|
+
edsl/auto/StagePersonaDimensions.py,sha256=9tjZJGA1ytTgMlTspRrYKRXj0QYvkWx9Yg5Comf_x8k,2069
|
25
|
+
edsl/auto/StageQuestions.py,sha256=f2h0z-1slFDxdriM9Wxb9BiGLmQLL-VTHu3MK0XEIig,2209
|
26
|
+
edsl/auto/SurveyCreatorPipeline.py,sha256=b1rvJ1u_snPzdXIotfv_Zq3LV7OQVpIicudiFpny-S4,660
|
27
|
+
edsl/auto/utilities.py,sha256=Wfl0VYxnarhFB2NrJYwmswG_JwJ2AyqOPpS3smVoEFU,7402
|
28
|
+
edsl/base/Base.py,sha256=dTXYSNcmNbkUVe6cv5kskJOmY1bbTRgQw0OGdtH_Dck,8534
|
29
|
+
edsl/config.py,sha256=iL5r-JAFGN7-05p3NX4FKICEBb_gOG7CWmVd1C_ZkhQ,6951
|
30
|
+
edsl/conversation/Conversation.py,sha256=GDGEq_2_ni1hEUM__2x2MBoaw4GZ1Nl5RqyvLiA5wzs,9589
|
31
|
+
edsl/conversation/car_buying.py,sha256=SmRd-_L62AmiZJK5UgJV3_tYTsVPTpEYQWb81ygN9Xo,1964
|
32
|
+
edsl/conversation/chips.py,sha256=IoWoWEdSfJqy_TRcPPjT73lhEmYgBrZ4_3kwHEHJijQ,3323
|
33
|
+
edsl/conversation/mug_negotiation.py,sha256=mjvAqErD4AjN3G2za2c-X-3axOShW-zAJUeiJqTxVPA,2616
|
34
|
+
edsl/conversation/next_speaker_utilities.py,sha256=bqr5JglCd6bdLc9IZ5zGOAsmN2F4ERiubSMYvZIG7qk,3629
|
35
|
+
edsl/coop/CoopFunctionsMixin.py,sha256=RS79ADEbYUK-frf_WY-YnozVbM3ZaBufv1jxjF96GtQ,735
|
36
|
+
edsl/coop/ExpectedParrotKeyHandler.py,sha256=1lriainznM1FfQ7GEvTiI1EW8uNi8Sms3Vt5UDxso3U,4456
|
37
|
+
edsl/coop/PriceFetcher.py,sha256=J5EaM-bPqnd2B0ZBVVqXJ-UQK-D4SdjmddYepnN7jz4,1777
|
38
|
+
edsl/coop/__init__.py,sha256=4iZCwJSzJVyjBYk8ggGxY2kZjq9dXVT1jhyPDNyew4I,115
|
39
|
+
edsl/coop/coop.py,sha256=j5tfzPfQdBW_CcDDpAD5HaqJQNYPPWUCPkEz5wr3vk4,39750
|
40
|
+
edsl/coop/utils.py,sha256=SBV76sk5_2rhP3RKGkJsOkrx9Qr-jD0puqYhVR_MgSY,3900
|
41
|
+
edsl/data/Cache.py,sha256=ryMWLowyXa8VwWKru-0pF43JHh2UVyL5Zezst-26J6c,18510
|
42
|
+
edsl/data/CacheEntry.py,sha256=mTc-WG_dWc4s9s3MrOl3yUqao2Q_igCerNcluM4XCSQ,7376
|
43
|
+
edsl/data/CacheHandler.py,sha256=wy2AdKkk_pmwP71htdmLV9UzXM4AuHm5pn1qscJlX9s,5150
|
44
|
+
edsl/data/RemoteCacheSync.py,sha256=QVTVjpcGVZz1VxYXZPP7kBGsU9fXOS6EHALHOnQLfRU,6094
|
45
|
+
edsl/data/SQLiteDict.py,sha256=V5Nfnxctgh4Iblqcw1KmbnkjtfmWrrombROSQ3mvg6A,8979
|
46
|
+
edsl/data/__init__.py,sha256=i_bbYBc-vrdASBpDMcpIcfhbLKYOkvqA57R3ysBcQ6o,177
|
47
|
+
edsl/data/orm.py,sha256=Jz6rvw5SrlxwysTL0QI9r68EflKxeEBmf6j6himHDS8,238
|
48
|
+
edsl/data_transfer_models.py,sha256=r7Nl2ZyR0FZhzqQg8tz2jxonTVBboK9W3qMicts69qc,1960
|
49
|
+
edsl/enums.py,sha256=foBiWLk82b_ve9v9NpGCbM6tQDYsVCGvoIJ5PCzwbjo,6043
|
50
|
+
edsl/exceptions/BaseException.py,sha256=eP30DOYtssbKt0qarfDkNOKDW-aG0DLaHtx42bp5dVQ,811
|
51
|
+
edsl/exceptions/__init__.py,sha256=guZX0w_IGt-fYBuK_xVKACfJfQU6AYXM2kscbPp8Yrw,1532
|
52
|
+
edsl/exceptions/agents.py,sha256=E_r9bHUQEPWTjy5D-CmDvFMgFe34aPtwo4ApYN71mDg,1626
|
53
|
+
edsl/exceptions/cache.py,sha256=z4D4RHPtOV86xLsW5bl4JM8UtpH8D89gufrlpVu2mWM,178
|
54
|
+
edsl/exceptions/configuration.py,sha256=qH2sInNTndKlCLAaNgaXHyRFdKQHL7-dElB_j8wz9g4,351
|
55
|
+
edsl/exceptions/coop.py,sha256=xunPPrnbcNHn60wnH-Qw0rC_Ey99X_N7HnOBF8BQg7E,138
|
56
|
+
edsl/exceptions/data.py,sha256=K24CjgwFiMWxrF1Z2dF6F7Vfrge_y9kMK_wsYYSaroU,209
|
57
|
+
edsl/exceptions/general.py,sha256=zAyJnppPjjxQAn6X3A5fetmv5FUR7kQDU58vwBKvAks,1114
|
58
|
+
edsl/exceptions/inference_services.py,sha256=fU-HiPiIxR85qG3oDegI4e1kb_2nSih6pq8C-ObeaFc,156
|
59
|
+
edsl/exceptions/jobs.py,sha256=sSUATmzBIN1oINWuwPExxPqIWmfCo0XYj_yR4dJzVjo,803
|
60
|
+
edsl/exceptions/language_models.py,sha256=lpAFUiY8uVMXHAznGXtHQSdzdkAWOGu5A9u3-t1vi8A,1814
|
61
|
+
edsl/exceptions/prompts.py,sha256=vD_reI-RVKWYHYozenEmhmB7Rb1sIiXghgNUtbVGBUo,247
|
62
|
+
edsl/exceptions/questions.py,sha256=ct3lfbhOyvbfzC7OgxVye1ROMUvtlUPsGDxX3nltT_Q,3171
|
63
|
+
edsl/exceptions/results.py,sha256=NfY-IWroZsEKpprAipIxjJ2hxJKWgBS-Qa-zubDhAoE,509
|
64
|
+
edsl/exceptions/scenarios.py,sha256=j4OE9xrSrLKdRMwmr3webIRHBwBgvx0DL0uDThRW7yY,855
|
65
|
+
edsl/exceptions/surveys.py,sha256=BJUKFVkj6nrsq3TyvaZfEE-zjy3BCAM-s1lsdcrv_MM,677
|
66
|
+
edsl/inference_services/AnthropicService.py,sha256=Xr1MQmBYYKKaMd9IRBYvK357i7vrxUm73nxxNZGCCCQ,3761
|
67
|
+
edsl/inference_services/AvailableModelCacheHandler.py,sha256=9zGT1Huz0VTOZyN5GpakcMAe6pZyYmZcdSzuqPUZ09g,6179
|
68
|
+
edsl/inference_services/AvailableModelFetcher.py,sha256=RU_mYHOGOQ7hCQN552EEse0piRrfKiz_Uy1YoP4Xwbc,7774
|
69
|
+
edsl/inference_services/AwsBedrock.py,sha256=aOJ7n_05cdh2EkTWfd9mhOJiPdaqEtmBJBHKmT_Ds5A,4001
|
70
|
+
edsl/inference_services/AzureAI.py,sha256=8ymXCAWqa4NkYEGi6_AvcSRN1WLPXueAWk-W8w_T6AI,8817
|
71
|
+
edsl/inference_services/DeepInfraService.py,sha256=fWlH5sCNxf8eHPHxPPxJMEVWpCM9sDenkC8IZYqtXfA,515
|
72
|
+
edsl/inference_services/GoogleService.py,sha256=SZYEGZXsEcCgvGpc59vFVL382_MeCee9ZnFhJwg4kSo,4945
|
73
|
+
edsl/inference_services/GroqService.py,sha256=eDMq8d7YAlJ2689ywaoaPGvMgFfOiX1KYlF_vr97N6I,510
|
74
|
+
edsl/inference_services/InferenceServiceABC.py,sha256=tbdaJgPeKIe3n4RGhifBFTpyKHxJnccn-YpHGyafgpE,2019
|
75
|
+
edsl/inference_services/InferenceServicesCollection.py,sha256=cgGuixJopkwEb8QU6F_zUiTD8Nxcd6SKUUg05epuNuk,5051
|
76
|
+
edsl/inference_services/MistralAIService.py,sha256=_cgcWKHcvTPyjYgvjsrPkwGro7zhi9YljDTN7ENDIdw,3805
|
77
|
+
edsl/inference_services/OllamaService.py,sha256=oro9CRl8IUE2Ro-zE69Cr4Zaf6Gdw29XW5CFU-46E0k,498
|
78
|
+
edsl/inference_services/OpenAIService.py,sha256=56DitvQVi7aD7MelP_r_hrg73_yaOIr8cxl2mVehAEQ,8250
|
79
|
+
edsl/inference_services/PerplexityService.py,sha256=PWe8R0dT9aMOtrgBg_qIycVeqQCDlEmniGFhWBYi4U0,5657
|
80
|
+
edsl/inference_services/ServiceAvailability.py,sha256=z2GaZ7Qt2qILcRTVl1X7zZVlPFOP3THntB5WSgbbesQ,4741
|
81
|
+
edsl/inference_services/TestService.py,sha256=wfRQ3VfRG-yiT-laZ71OTGMji22hEpNxN3UEDvty3Fk,2954
|
82
|
+
edsl/inference_services/TogetherAIService.py,sha256=fe349fdJQw-9OHz5mDGa5qxdC9Nccz0MtkisNIZjBkI,6360
|
83
|
+
edsl/inference_services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
84
|
+
edsl/inference_services/data_structures.py,sha256=IqxATICnHYE5csSUQl6qbzz3KcUask5pZk78-gijms4,3850
|
85
|
+
edsl/inference_services/models_available_cache.py,sha256=bOvevfRn2HlmBcHalaDkjFLxiw0JJhsXVUHZo_OhgjA,4061
|
86
|
+
edsl/inference_services/rate_limits_cache.py,sha256=HYslviz7mxF9U4CUTPAkoyBsiXjSju-YCp4HHir6e34,1398
|
87
|
+
edsl/inference_services/registry.py,sha256=Rkjfe4iABQc7aiY73bGnbRAgLXY0osni22hYnmMEI2c,1335
|
88
|
+
edsl/inference_services/write_available.py,sha256=NNwhATlaMp8IYY635MSx-oYxt5X15acjAfaqYCo_I1Y,285
|
89
|
+
edsl/jobs/AnswerQuestionFunctionConstructor.py,sha256=wNM2HNhEQLYO8BRCfzqPGpJrqmtw0FBkGPa_VUe9emQ,7977
|
90
|
+
edsl/jobs/Answers.py,sha256=lZpbGAqYqMQw7MUsmpivqMZkHjHHOmCY32s9Km284pQ,1445
|
91
|
+
edsl/jobs/FetchInvigilator.py,sha256=83tbrqY_1qK0biNF1x51N0sFx49FFmuOi3o5HmFuCIY,1785
|
92
|
+
edsl/jobs/InterviewTaskManager.py,sha256=I1GShC2CrBFnGOcWn3q2YUU0SJbesmeLrrM2_nkuhZo,3748
|
93
|
+
edsl/jobs/InterviewsConstructor.py,sha256=MyRgygmi4318PgERjhhZZXlNUju2lB1CBu8LJJjYNSs,1853
|
94
|
+
edsl/jobs/Jobs.py,sha256=GHyTwD0bL9p5YIMtrJJbShbE0dtAn14oNTdySugVTNU,29694
|
95
|
+
edsl/jobs/JobsChecks.py,sha256=v1sgdjKQTYMoZu-uobM9USn1KaF6QBoOfNSGH7ueZjU,5403
|
96
|
+
edsl/jobs/JobsComponentConstructor.py,sha256=yzjBFQx1oK8CN2taniB82kpXo6W712dIG1E9ouwkujg,6969
|
97
|
+
edsl/jobs/JobsPrompts.py,sha256=OtLWuTPs6dncNyrXXVskpSCoKOUav4msxoa9uDtP2LM,9755
|
98
|
+
edsl/jobs/JobsRemoteInferenceHandler.py,sha256=NOCEihkk8sTicfn25F78BTLje7t6LmwGDJG1w-cI4QI,10937
|
99
|
+
edsl/jobs/JobsRemoteInferenceLogger.py,sha256=VN0WaRqS7mb7tbVTfzIzQBTM-tAgjKn8wnrnLUL9kKk,9260
|
100
|
+
edsl/jobs/RequestTokenEstimator.py,sha256=IF2sb1Tt_exzNyWnuvd8mm81gfyZsv-rUP-GUHBX32E,1183
|
101
|
+
edsl/jobs/__init__.py,sha256=aKuAyd_GoalGj-k7djOoVwEbFUE2XLPlikXaA1_8yAg,32
|
102
|
+
edsl/jobs/async_interview_runner.py,sha256=FdkfhazuRZjDUPjSYPqNGdfoYG538PzCa62rwdnKTmc,5226
|
103
|
+
edsl/jobs/buckets/BucketCollection.py,sha256=KaeTB-sXWwzAo33SyfwCeBo4YXezlHmH69vQo8x5tqw,3687
|
104
|
+
edsl/jobs/buckets/ModelBuckets.py,sha256=hxw_tzc0V42CiB7mh5jIxlgwDVJ-zFZhlLtKrHEg8ho,2419
|
105
|
+
edsl/jobs/buckets/TokenBucket.py,sha256=DNv5aOO8kwq3PvCXg84HCBhYFkzSiOqLBLiEJRFuCGQ,10082
|
106
|
+
edsl/jobs/buckets/TokenBucketAPI.py,sha256=ht0b-xZvzaR9ymhjin4c1AZwapuLPOoJ2N9hViSPuA4,6847
|
107
|
+
edsl/jobs/buckets/TokenBucketClient.py,sha256=Jx20nDAdUSh3USUX9B4PHd1uAFMdyOHtRa2phzFnh-w,7095
|
108
|
+
edsl/jobs/check_survey_scenario_compatibility.py,sha256=dU1IUPb1FFm0P1ievzTmtgcRxH2soCdPaG5GZ1Zd4fA,3816
|
109
|
+
edsl/jobs/data_structures.py,sha256=1kLN6goMLcOIT20vrDW2Wq-sA-cfygb_qgplW4-o090,3727
|
110
|
+
edsl/jobs/decorators.py,sha256=vpeSgI3EP4RFz5V_OclFdnhiSrswihavAN8C9ygRhGE,1135
|
111
|
+
edsl/jobs/interviews/Interview.py,sha256=hsMyKJFftalQqwZXdAAcT9V1aW7w-ZSvjAc45aqaIRw,15051
|
112
|
+
edsl/jobs/interviews/InterviewExceptionCollection.py,sha256=ZIe9nnI8pznxp1D0K2Ii9SHorc9-f0k_lQV-Giq41P8,3666
|
113
|
+
edsl/jobs/interviews/InterviewExceptionEntry.py,sha256=JMLcftRItQRCo8cOWH5S2H02wa-157l1TCFGVDXfViY,5685
|
114
|
+
edsl/jobs/interviews/InterviewStatistic.py,sha256=hY5d2EkIJ96NilPpZAvZZzZoxLXM7ss3xx5MIcKtTPs,1856
|
115
|
+
edsl/jobs/interviews/InterviewStatisticsCollection.py,sha256=_ZZ0fnZBQiIywP9Q_wWjpWhlfcPe2cn32GKut10t5RI,788
|
116
|
+
edsl/jobs/interviews/InterviewStatusDictionary.py,sha256=MSyys4hOWe1d8gfsUvAPbcKrs8YiPnz8jpufBSJL7SU,2485
|
117
|
+
edsl/jobs/interviews/InterviewStatusLog.py,sha256=6u0F8gf5tha39VQL-IK_QPkCsQAYVOx_IesX7TDDX_A,3252
|
118
|
+
edsl/jobs/interviews/ReportErrors.py,sha256=xmzppVqNI93-NjL-BCBOBgBFkU3tuBJiw-FHYKeWDlY,1783
|
119
|
+
edsl/jobs/interviews/interview_status_enum.py,sha256=KJ-1yLAHdX-p8TiFnM0M3v1tnBwkq4aMCuBX6-ytrI8,229
|
120
|
+
edsl/jobs/jobs_status_enums.py,sha256=li94KU-DHNEq7ksR2ikQxms6W-J7sfiRlmlgGQX3F-E,172
|
121
|
+
edsl/jobs/loggers/HTMLTableJobLogger.py,sha256=0s47WYqT9JK7dF22U_fVDke6_cDjUKxn-KW6JJTwvYg,11717
|
122
|
+
edsl/jobs/results_exceptions_handler.py,sha256=5meG_S2SXehcMbmBks6QC2RRaR79eHAclDwMCbl_6Rs,3258
|
123
|
+
edsl/jobs/runners/JobsRunnerAsyncio.py,sha256=j_wrU0CdeCSIRdUno9g-R9UL83z_p6HIrFP_twE9td8,5837
|
124
|
+
edsl/jobs/runners/JobsRunnerStatus.py,sha256=1aySPXQ0ijCvv6Bqvddqe6Hlr-wAlTvxBV6D3Gvveqw,10466
|
125
|
+
edsl/jobs/runners/JobsRunnerStatusData.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
126
|
+
edsl/jobs/tasks/QuestionTaskCreator.py,sha256=Bx7x2_Tc6hQvaAQNtnxvoF52bTCZH7AhiVWg_gSajmo,9934
|
127
|
+
edsl/jobs/tasks/TaskCreators.py,sha256=XqAbNU33378Z4PQncokbfJwnKt3KHR9aqa5fKYRDpfg,2694
|
128
|
+
edsl/jobs/tasks/TaskHistory.py,sha256=aFp6PZSwoh2xtl3lXx848CLiXTibgE3PgUq1h9d0Wfo,15764
|
129
|
+
edsl/jobs/tasks/TaskStatusLog.py,sha256=bqH36a32F12fjX-M-4lNOhHaK2-WLFzKE-r0PxZPRjI,546
|
130
|
+
edsl/jobs/tasks/task_status_enum.py,sha256=FLmfSgHSbB921UyC-mvKpBLg5HLRf_NbHKXF4f57kdw,5264
|
131
|
+
edsl/jobs/tokens/InterviewTokenUsage.py,sha256=u_6-IHpGFwZ6qMEXr24-jyLVUSSp4dSs_4iAZsBv7O4,1100
|
132
|
+
edsl/jobs/tokens/TokenUsage.py,sha256=odj2-wDNEbHl9noyFAQ0DSKV0D9cv3aDOpmXufKZ8O4,1323
|
133
|
+
edsl/language_models/ComputeCost.py,sha256=SLP_tQiZwMonlIVAsOseWpN4Gd3zVirSxN2WJsO5kzs,2310
|
134
|
+
edsl/language_models/LanguageModel.py,sha256=MpUs-71767RwVy0thutiltnGNNQ2eeRlePx26ZfGiS8,21611
|
135
|
+
edsl/language_models/ModelList.py,sha256=IKh-Xxp6iBzHZmzcjVsOHhyQ-4GO8CKd0trhQxcl8F0,4683
|
136
|
+
edsl/language_models/PriceManager.py,sha256=4dN8L1qn8KEhqqHVy_50yLAahrJKlesAm6jtE3pzMcw,4432
|
137
|
+
edsl/language_models/RawResponseHandler.py,sha256=4ekXsNlDUOb_cfzmfJLS-KIjQXjf6xGgGdDgloqANxI,3904
|
138
|
+
edsl/language_models/RegisterLanguageModelsMeta.py,sha256=eMtBSAnlRnC4c-0_o2QkSNyzv-uAce4BEGMXq2PLj2E,7523
|
139
|
+
edsl/language_models/ServiceDataSources.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
140
|
+
edsl/language_models/__init__.py,sha256=DkG3ZDEFOP1JQlhAuKTotxj4WfkWenzNJwr4WQpqq2Y,106
|
141
|
+
edsl/language_models/fake_openai_call.py,sha256=dxbL5e4NLF-eTk9IduPyGwLiVCX_-eGCJDaLYPlQTqc,364
|
142
|
+
edsl/language_models/fake_openai_service.py,sha256=2AAsAinELbMZRqiepwBkWhWcLuMe5ORXUBNarrdl1ug,1714
|
143
|
+
edsl/language_models/key_management/KeyLookup.py,sha256=bKmSrvivKtUrrSR2CX-uBi82mJKCwbhdRhPYTgLO4bs,2058
|
144
|
+
edsl/language_models/key_management/KeyLookupBuilder.py,sha256=sykgASMHvbj9az3-uEMjhlZqN8veTl9JSDxIKzaG3rs,9206
|
145
|
+
edsl/language_models/key_management/KeyLookupCollection.py,sha256=OU6jPZoJ54fAtkTfxwsD2lw_ZVha92G_T0LpCq1r-js,1205
|
146
|
+
edsl/language_models/key_management/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
147
|
+
edsl/language_models/key_management/models.py,sha256=n5H76iH6mWCsjVLmFwwVPhcB81jNkfa9hLwIgKVxeQI,2594
|
148
|
+
edsl/language_models/model.py,sha256=H_0JtAkI6S6psX8h_hUwp2nEZNOMLPV3Dl33jnaj5A4,8784
|
149
|
+
edsl/language_models/repair.py,sha256=TnYY6-rTQFeZaeGOymT0UkIjfZrxs4JK0v2h9UY4m48,5401
|
150
|
+
edsl/language_models/utilities.py,sha256=0dXHl74OlGKf1224fo5wYsawdBvxqMAB87nY_tJ0VYY,2295
|
151
|
+
edsl/notebooks/Notebook.py,sha256=j1W_sGp5Oa6tY4FlR2KthOU_ZzCFlRShkHYcpciIt94,8217
|
152
|
+
edsl/notebooks/NotebookToLaTeX.py,sha256=94gewtyE9PHeZuMHkMm38Bv571vk0Scd5jmQFpVOBNY,4512
|
153
|
+
edsl/notebooks/__init__.py,sha256=VNUA3nNq04slWNbYaNrzOhQJu3AZANpvBniyCJSzJ7U,45
|
154
|
+
edsl/prompts/Prompt.py,sha256=SwvOVnw0SaSsYBjJgV11_hrrpgBlWbHxXKhM3d-0gG4,11409
|
155
|
+
edsl/prompts/__init__.py,sha256=wrtkH7JW72U93_pnmTvqQx_NoadH5OPRNfrZ5AaD7Co,87
|
156
|
+
edsl/questions/ExceptionExplainer.py,sha256=BgM80FRPJjS_TrY6XaVmlT666MzY9DEagviGQj9-WEQ,2868
|
157
|
+
edsl/questions/HTMLQuestion.py,sha256=mRzVpfFLZ2RYBSDbLHeXTyAXbUHorpiwhNf-nuUSC5M,3431
|
158
|
+
edsl/questions/QuestionBase.py,sha256=vyMOvEfMtka-k9Lkx07e36Ui00wM0sjBLUMxI6mi82c,18504
|
159
|
+
edsl/questions/QuestionBasePromptsMixin.py,sha256=PFzqZKyLhtwKebzakFnbCIN1_GzSzxsHxsRfttsSSEA,7949
|
160
|
+
edsl/questions/QuestionBudget.py,sha256=fBxDRfPJ3HctSCNTzqGLPuRCACySb3NHugXCNE7pXH8,8133
|
161
|
+
edsl/questions/QuestionCheckBox.py,sha256=ho_tyr3a6gHcA2kWlfz0dSW_-2yd6ifdC3niPPPQJAY,12847
|
162
|
+
edsl/questions/QuestionDict.py,sha256=uk2X3WWKYuPY_uOoNsj5l9xiPVKk_wRoXBmz70PKBbI,13647
|
163
|
+
edsl/questions/QuestionExtract.py,sha256=Gix35u_RMHN2-paKJ8pc0h5c7HaMoLD6MOPVZVxVHkY,6055
|
164
|
+
edsl/questions/QuestionFreeText.py,sha256=yxs9H8y4RHUcmEjV02-_Pu_DjA2FizG9B3gd_hZQD2I,3377
|
165
|
+
edsl/questions/QuestionFunctional.py,sha256=APuTZ5QNBTLvwv_iNcgFFV81qImiUL3qHMMHjArREf0,5581
|
166
|
+
edsl/questions/QuestionList.py,sha256=YWCtqzo0JnYhNH0yOfU_iheL_3xQLiZm2L8i744B6Vo,7093
|
167
|
+
edsl/questions/QuestionMatrix.py,sha256=AYmFkgsWoWIa83w9ByhYBzYmocO2Q7B5D_qFPE9nJbU,9207
|
168
|
+
edsl/questions/QuestionMultipleChoice.py,sha256=5QyfLhMFFrzVpweP0U3bl0sluBf8qNiyZkx5On84l64,12328
|
169
|
+
edsl/questions/QuestionNumerical.py,sha256=IBA8X3BuJ0q2sXrhcG1Px1FF1Hz7NOB9jvvtHGYUm8c,4873
|
170
|
+
edsl/questions/QuestionRank.py,sha256=Fqs7Zwv5fzRV5UdBsC7xBR6qzOINJftaCjAtKneSh8w,11283
|
171
|
+
edsl/questions/Quick.py,sha256=h6h4fEvIkLIFJX2JiqfOUEXzku9azWxEpI5o2A4RmVs,1731
|
172
|
+
edsl/questions/SimpleAskMixin.py,sha256=rbiKvNiH0-Fe5-hWSRqi1Yz0RbmwJ5bgU17z8Zf8oXc,2258
|
173
|
+
edsl/questions/__init__.py,sha256=zW51pm47yGEPElTfUBMZVzA-JPXC5CEw_X8xEt0nAIA,1273
|
174
|
+
edsl/questions/answer_validator_mixin.py,sha256=JDeWSa6YyZh6wAnnJuVrXxJNPaEou-EDI4X7voqreH4,14332
|
175
|
+
edsl/questions/compose_questions.py,sha256=ZcLkwNaofk-o0-skGXEDGZAj6DumOhVhyIUjqEnKrbg,3380
|
176
|
+
edsl/questions/data_structures.py,sha256=PbIML8388sHogUHGamz21DXKEpfU8zwyiGflc1y0cHE,432
|
177
|
+
edsl/questions/decorators.py,sha256=ZijaRYUntAcg0JEztCiOEpcDvvVie___85Zx5ogBQXY,596
|
178
|
+
edsl/questions/derived/QuestionLikertFive.py,sha256=XCpmwlk2qyCxEkiG3UwPqVpS5-k4d4uWyMaxfJg5wkw,2585
|
179
|
+
edsl/questions/derived/QuestionLinearScale.py,sha256=oGxTOFITNrFofV468Gow9rtnBMWBBS6HR2sdw6nenqE,3419
|
180
|
+
edsl/questions/derived/QuestionTopK.py,sha256=IAmW1kUA1rvW_NH3yxroLfarhl6_QyTEwWZ54gbi6fg,3294
|
181
|
+
edsl/questions/derived/QuestionYesNo.py,sha256=KWJyaXSNPNxELtK0nWvIqNtpAF05MMAC0ILUjxXkVwo,2735
|
182
|
+
edsl/questions/derived/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
183
|
+
edsl/questions/descriptors.py,sha256=aZXserK3kKpR_VaxZUhnUZtQd2n4HP4sBxKBGOB9ChY,18374
|
184
|
+
edsl/questions/loop_processor.py,sha256=h2t8Sn71JBBpim3MaVcZtPTcUsPCBR2aJIpzDFzam5k,4553
|
185
|
+
edsl/questions/prompt_templates/question_budget.jinja,sha256=-ekZYCa_KRc-xLcpf3j-YmXV0WSyIK_laOp2x3li-tA,737
|
186
|
+
edsl/questions/prompt_templates/question_checkbox.jinja,sha256=V-Dn2VJhfXyIILWIhMviTfQ5WuXh1YZerwicaA6Okzc,1136
|
187
|
+
edsl/questions/prompt_templates/question_extract.jinja,sha256=27b8iMJaA2h5UOrHPMiBCapMnJou4vSkZzkZndK2s1U,343
|
188
|
+
edsl/questions/prompt_templates/question_free_text.jinja,sha256=lU95cakq5xS-1h57WsudJLd6hXrJfRmMdxIGgh1avw8,102
|
189
|
+
edsl/questions/prompt_templates/question_linear_scale.jinja,sha256=VB9bFPeLGGb5aiFD8zWIfwWeCxJzWmcYDki0MCoWDWk,455
|
190
|
+
edsl/questions/prompt_templates/question_list.jinja,sha256=MAkNv88E79jXK9TxKdnf5KgA77CWz9vXc2TZm2r-g-A,495
|
191
|
+
edsl/questions/prompt_templates/question_multiple_choice.jinja,sha256=sSyAhnexZF6oWqHL-45r7o69vrFcCbbYXLZ3zu7q76U,761
|
192
|
+
edsl/questions/prompt_templates/question_numerical.jinja,sha256=c20sp3HfFonfaRwwmnF7HjAEugU15QlgpNAIkNHasl0,1218
|
193
|
+
edsl/questions/question_base_gen_mixin.py,sha256=UNgYVmQvX_adD9FxQEd0peTzhW6-lf9iDocmkNplZhY,6182
|
194
|
+
edsl/questions/question_registry.py,sha256=H4Q4JYMHn7-_5rU7Ap26N6Ruzz9WSZqOf1b89MScIDI,6352
|
195
|
+
edsl/questions/register_questions_meta.py,sha256=2h_9iZt3cjr_7JRmveTqbmEBBCvjtefMDfhM7Pgd_zg,2598
|
196
|
+
edsl/questions/response_validator_abc.py,sha256=410DIb8Z5uF_xu1lG32OF6X7aoOtL6gG3UIMY83kfeo,6838
|
197
|
+
edsl/questions/response_validator_factory.py,sha256=IzRHHcr2CjWFLgCHXHojwWa5Erc6E8pilTLys1M-5zE,1301
|
198
|
+
edsl/questions/settings.py,sha256=er_z0ZW_dgmC5CHLWkaqBJiuWgAYzIund85M5YZFQAI,291
|
199
|
+
edsl/questions/templates/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
200
|
+
edsl/questions/templates/budget/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
201
|
+
edsl/questions/templates/budget/answering_instructions.jinja,sha256=tF3bNv9_vIOjsWeZeRsMdgprpNrAKhUreQ53LUh1DP4,352
|
202
|
+
edsl/questions/templates/budget/question_presentation.jinja,sha256=wrZnM5ZbNhPZsvbtflfKrYpR3lH5ELDI7NM2l8pW8Ro,198
|
203
|
+
edsl/questions/templates/checkbox/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
204
|
+
edsl/questions/templates/checkbox/answering_instructions.jinja,sha256=UCPWWsnaAW3oB05IZDLQtofHXBesbqQxguXMfykUTQU,441
|
205
|
+
edsl/questions/templates/checkbox/question_presentation.jinja,sha256=2u8XIkFPWzOuhbeoIvYBm6zUWnTHF66cGJXIznxVobw,807
|
206
|
+
edsl/questions/templates/dict/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
207
|
+
edsl/questions/templates/dict/answering_instructions.jinja,sha256=4TJnVLM2PSZbob8fuzrUAS-oaZrU6y8osKTIyxzAtRY,676
|
208
|
+
edsl/questions/templates/dict/question_presentation.jinja,sha256=OLDuxUc6BjT4InCtAkK_e-D5qbsDmtxw1Spp9pWFYhU,17
|
209
|
+
edsl/questions/templates/extract/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
210
|
+
edsl/questions/templates/extract/answering_instructions.jinja,sha256=sjHH4mBdoi6fdpHtRNWG0q3E4ZihvBpVUf08TNnwad4,253
|
211
|
+
edsl/questions/templates/extract/question_presentation.jinja,sha256=OLDuxUc6BjT4InCtAkK_e-D5qbsDmtxw1Spp9pWFYhU,17
|
212
|
+
edsl/questions/templates/free_text/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
213
|
+
edsl/questions/templates/free_text/answering_instructions.jinja,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
214
|
+
edsl/questions/templates/free_text/question_presentation.jinja,sha256=OLDuxUc6BjT4InCtAkK_e-D5qbsDmtxw1Spp9pWFYhU,17
|
215
|
+
edsl/questions/templates/likert_five/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
216
|
+
edsl/questions/templates/likert_five/answering_instructions.jinja,sha256=DK37QaSfUdXu9JZKu3RYXl1yi4Hg2kfKfCb3CRHITII,331
|
217
|
+
edsl/questions/templates/likert_five/question_presentation.jinja,sha256=hoEVj4GQD3EYnR2AStXkMFOJeqISNoEVzBd8-cx2yWg,273
|
218
|
+
edsl/questions/templates/linear_scale/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
219
|
+
edsl/questions/templates/linear_scale/answering_instructions.jinja,sha256=reWlNj1ObkpZTuFXlqk_dF92hPgC74ATziBv5b9KobE,253
|
220
|
+
edsl/questions/templates/linear_scale/question_presentation.jinja,sha256=32E7yJcxHd3yn-QG_bq47VJBiB0xqbxMK8TXJw-Obcs,148
|
221
|
+
edsl/questions/templates/list/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
222
|
+
edsl/questions/templates/list/answering_instructions.jinja,sha256=hhWiozX4Sqf7n9NrV52sripxM2ZTrDz74axLDl6s6tE,265
|
223
|
+
edsl/questions/templates/list/question_presentation.jinja,sha256=ZEOZr_SpQ0V8qKKjFlyVlIQr_nAU_zosSsXyidEV_yE,131
|
224
|
+
edsl/questions/templates/matrix/__init__.py,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
|
225
|
+
edsl/questions/templates/matrix/answering_instructions.jinja,sha256=65igOaEAE6DiYGvfM8uEWRfVCLtCztcxYYCKc9JILIY,211
|
226
|
+
edsl/questions/templates/matrix/question_presentation.jinja,sha256=iANTk0qhLmiYXUNRAH2bqDgNgiLJGc7IsfkwqaBISvs,397
|
227
|
+
edsl/questions/templates/multiple_choice/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
228
|
+
edsl/questions/templates/multiple_choice/answering_instructions.jinja,sha256=eScbqZtrNDOX4IlZzP0HMA7Cj-x-fT9UpyQKrPgiif4,330
|
229
|
+
edsl/questions/templates/multiple_choice/html.jinja,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
230
|
+
edsl/questions/templates/multiple_choice/question_presentation.jinja,sha256=hoEVj4GQD3EYnR2AStXkMFOJeqISNoEVzBd8-cx2yWg,273
|
231
|
+
edsl/questions/templates/numerical/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
232
|
+
edsl/questions/templates/numerical/answering_instructions.jinja,sha256=70CnuIbdRKGiYJk7316-FFloRh3Oeg_RvUu4tthNKqs,323
|
233
|
+
edsl/questions/templates/numerical/question_presentation.jinja,sha256=8lMUWtEPHD4XOAyVEfCmWSwRFrdUa3lo8sxzogDyzWE,183
|
234
|
+
edsl/questions/templates/rank/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
235
|
+
edsl/questions/templates/rank/answering_instructions.jinja,sha256=-LWrhVJ0ZwQW_DXhARh5GweqlarWbhZzoqwr6tE-33s,433
|
236
|
+
edsl/questions/templates/rank/question_presentation.jinja,sha256=9Vbm88_nDl5Xnb09V4QEw6jTp-ryXBoJV6DCFDMyPI4,334
|
237
|
+
edsl/questions/templates/top_k/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
238
|
+
edsl/questions/templates/top_k/answering_instructions.jinja,sha256=2V38SJZ0Y1E70mHm0HJUzGKregiSlEqVYIcqbncxh5c,266
|
239
|
+
edsl/questions/templates/top_k/question_presentation.jinja,sha256=2u8XIkFPWzOuhbeoIvYBm6zUWnTHF66cGJXIznxVobw,807
|
240
|
+
edsl/questions/templates/yes_no/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
241
|
+
edsl/questions/templates/yes_no/answering_instructions.jinja,sha256=UAcssfcYeW8zytmPOVJOVQEdwdvlRspE8WnatYvreJQ,172
|
242
|
+
edsl/questions/templates/yes_no/question_presentation.jinja,sha256=hoEVj4GQD3EYnR2AStXkMFOJeqISNoEVzBd8-cx2yWg,273
|
243
|
+
edsl/results/CSSParameterizer.py,sha256=vI3VTgTihJeCYGfmGp7fOhTitHZ17jrDGbq46Sa2rd8,3677
|
244
|
+
edsl/results/Dataset.py,sha256=5mpxMKUqqv-593lF5fEgi2aORUj2iIbIMEZnPrTP33M,20401
|
245
|
+
edsl/results/DatasetExportMixin.py,sha256=6U1IN1Nb_bwgDZtQx9mhUV63Topkvv3ssxyqBEcG848,21267
|
246
|
+
edsl/results/DatasetTree.py,sha256=nvNCF9psLcQ65qsxze7qkrhLn-U-N8OJ327Nf-sFskQ,10178
|
247
|
+
edsl/results/MarkdownToDocx.py,sha256=e8kdDPoqS6Zvd8OTldP9AXbjtmr8BZnro7f0-g1ENi4,4123
|
248
|
+
edsl/results/MarkdownToPDF.py,sha256=RgQ8V86AD_h0HlohUiTWcbL8zOpI8xFC4FK-aOh26HE,3608
|
249
|
+
edsl/results/Result.py,sha256=6uNvV7G3mysZbIU5EFhDDtG0xdedXG1p3RYnLhRMfuM,21181
|
250
|
+
edsl/results/Results.py,sha256=yc4zx4aNuk1nzXYQljzT024r5bB3V1tSTheOeVzix0I,41859
|
251
|
+
edsl/results/ResultsExportMixin.py,sha256=v9N4pUMrycmKIDzdWn1grmx7F8lxIPAOjfV6OScYSwc,1379
|
252
|
+
edsl/results/ResultsGGMixin.py,sha256=SAYz8p4wb1g8x6KhBVz9NHOGib2c2XsqtTclpADrFeM,4344
|
253
|
+
edsl/results/TableDisplay.py,sha256=xGJcotgUqWrmCkQLeD9YIwLrNv7su4VDce3EnllfrLQ,3725
|
254
|
+
edsl/results/TextEditor.py,sha256=8lG6Dh1PDE3Yq_oDvu2zOQHpcQEfLfflSzd04BjHciw,1370
|
255
|
+
edsl/results/__init__.py,sha256=cGvJx1BvGCspUPTKYxKwQDRIoWxFSwHUAfOfuVVti4E,82
|
256
|
+
edsl/results/file_exports.py,sha256=usanzUuUO2TzS8kM0yZJvrRFCUg5VeeCCuJNXJIcHuI,7912
|
257
|
+
edsl/results/results_fetch_mixin.py,sha256=VEa0TKDcXbnTinSKs9YaE4WjOSLmlp9Po1_9kklFvSo,848
|
258
|
+
edsl/results/results_selector.py,sha256=tLz6OxUnyNCJF6WWOfsY2AFIrdbK0FqqvhTVGyJs-Lc,5271
|
259
|
+
edsl/results/results_tools_mixin.py,sha256=mseEFxJCf9sjXdIxpjITt_UZBwdXxw2o2VLg5jMrALA,3017
|
260
|
+
edsl/results/smart_objects.py,sha256=_mfO0OXWTAbeZr-lGj6TUskfkqKa6ztgdHWmLBaFjow,2462
|
261
|
+
edsl/results/table_data_class.py,sha256=XQ1kHoBtbx-QBB-05FDwh2rip-XCZBex8dTkA1haLBs,254
|
262
|
+
edsl/results/table_display.css,sha256=d9HuZYpGvgpDItjYYB0SI88qEPZ4pLgxbhzty_o5DoY,2106
|
263
|
+
edsl/results/table_renderers.py,sha256=t3ELBYTFLcNJ6iGuQdMwQCxTe9j189AawDMA9YLrTgc,4387
|
264
|
+
edsl/results/tree_explore.py,sha256=hQjiO4E71rIOPDgEHgK8T8ukxqoNdgX_tvyiDlG4_9U,4624
|
265
|
+
edsl/scenarios/ConstructDownloadLink.py,sha256=DGfF6hoCUovpTQ_GWiEndc--fXe9St6UdiaPhj7ZJZw,3529
|
266
|
+
edsl/scenarios/DocumentChunker.py,sha256=LZXh_yx507LMNQ-i2VnSHZiPpRI0XQUECO8e3xAKAjI,3545
|
267
|
+
edsl/scenarios/DocxScenario.py,sha256=ul3nkX826m_T6LFptswqtnH5czP_yxMlLWgbTmFIZI4,482
|
268
|
+
edsl/scenarios/FileStore.py,sha256=onFZAqkdqzyQeQ9_2zn1qGY40SqmRG9X8DvtcbXW39o,17418
|
269
|
+
edsl/scenarios/PdfExtractor.py,sha256=ATJ_QOJ3yE7SkdAu3nQdQ-Z9dSjkBZyrEgeuDNtU_ZQ,1310
|
270
|
+
edsl/scenarios/Scenario.py,sha256=670xmH15K0YZovouw4EQc1fdGerY96gtfgfAOOjSxno,17021
|
271
|
+
edsl/scenarios/ScenarioHtmlMixin.py,sha256=5H8MnPPWqlGZ0_Ojv1WjkFaNNRrr-JpCRwlABDBfPXs,2111
|
272
|
+
edsl/scenarios/ScenarioList.py,sha256=xFn6LqixMsSJQk33Zk49rdGgKmq_K06SqhCQTE3pCuU,54341
|
273
|
+
edsl/scenarios/ScenarioListExportMixin.py,sha256=eghBPIi4CmvkPbHV2hpFyE08jtOzuHiKAlt4JC9D81w,1475
|
274
|
+
edsl/scenarios/ScenarioListPdfMixin.py,sha256=DjDbWdEz8VarVZXs5KCXZ66-74Ac4Xz515AwhPnZua0,7578
|
275
|
+
edsl/scenarios/__init__.py,sha256=CQXwTNTIG9jg_pLkDPZgapUFY0_LwZFVQ8HaYvof0Nc,145
|
276
|
+
edsl/scenarios/directory_scanner.py,sha256=eJHPx6pc_No-I-old0vwrNRwNxmgnn3Fr6mht5mp8Fw,3312
|
277
|
+
edsl/scenarios/file_methods.py,sha256=HeusyoXOi2Bb0Bfp8MVDWKMFpe_ipP-cxENiRrSKZQU,2621
|
278
|
+
edsl/scenarios/handlers/__init__.py,sha256=4GdEfrAk5a7mUfbwnf0TCcrvp1_aAYZPAnd433NmiGM,384
|
279
|
+
edsl/scenarios/handlers/csv.py,sha256=5W2fWa6FAL_QGTYTVLFaiEr28f6W7FaF-a9drsklSfc,1383
|
280
|
+
edsl/scenarios/handlers/docx.py,sha256=e6POWp3Xs-XCVr8TKMtDka1ZRySXZf17TcSimvw6owY,2203
|
281
|
+
edsl/scenarios/handlers/html.py,sha256=zXipNAYcQE4LRBrKZC9L_tkY1snxQe8ciJ2S1diyMcM,927
|
282
|
+
edsl/scenarios/handlers/json.py,sha256=hlZMHYwwuFrV9bGdbn8MNAjgBFue6l5W2TwCfyxSjZ0,3682
|
283
|
+
edsl/scenarios/handlers/latex.py,sha256=MdCdI04AXM7Z6b_ZVgHM3BP_2moWvoHKOmmr24Od-Qk,94
|
284
|
+
edsl/scenarios/handlers/md.py,sha256=dhMTQy0b6PauXu5S_VGBgsqPNFFs5QbxqM6yjHRFxC8,1488
|
285
|
+
edsl/scenarios/handlers/pdf.py,sha256=3lpxR1J58wCcTZ-xLOhMFVkJnD-fqlouxQ05moaxZAM,1845
|
286
|
+
edsl/scenarios/handlers/png.py,sha256=KxTzweTUaIUbNOS69g3X1X3D-zyayp3afbGRuNFnmpw,1144
|
287
|
+
edsl/scenarios/handlers/pptx.py,sha256=q9LAJVgqszOAcBJaFlL68__erSnMqygy8dj74354Y0g,3187
|
288
|
+
edsl/scenarios/handlers/py.py,sha256=XF5QTZeDTS85N0qgrchNiFA6XH4i9NKIw1K6oF-33dE,9780
|
289
|
+
edsl/scenarios/handlers/sql.py,sha256=wjs4GUrudZJKjPqnDIYXzPJI907pH9W9NXWISOjIQys,9705
|
290
|
+
edsl/scenarios/handlers/sqlite.py,sha256=GArwjxOscS9iNXIWTimRA2ZWU4ZmN5TgmYjQYZzcEF0,4982
|
291
|
+
edsl/scenarios/handlers/txt.py,sha256=aj6nPDP9tq0MrUXcswahKmAAa5d9OFB9k2QTtr8QtEM,998
|
292
|
+
edsl/scenarios/scenario_join.py,sha256=HO4ITQTDvFLLTuxjAgT7eLWbXGKfVtGJg4T3QfpvmgY,4902
|
293
|
+
edsl/scenarios/scenario_selector.py,sha256=Z47VwSkz57-u3-QRC8yAaQGTf0oIy3gtAK8MMYelX2g,5899
|
294
|
+
edsl/shared.py,sha256=lgLa-mCk2flIhxXarXLtfXZjXG_6XHhC2A3O8yRTjXc,20
|
295
|
+
edsl/study/ObjectEntry.py,sha256=Jtg8V_63BXKKMAOMBqhuHFBjuNqFdkHen8gS2LAWc8Q,5811
|
296
|
+
edsl/study/ProofOfWork.py,sha256=FaqYtLgeiTEQXWKukPgPUTWMcIN5t1FR7h7Re8QEtgc,3433
|
297
|
+
edsl/study/SnapShot.py,sha256=2p9-eP6F9-AfbN_3LL_ZBN5ve4jiQLBzP8XZ3rk3gCI,2701
|
298
|
+
edsl/study/Study.py,sha256=esM6o-pp3hnK9gBF5zxFLuryZBi0lTftZD_ob1ngDVw,18051
|
299
|
+
edsl/study/__init__.py,sha256=YAvPLTPG3hK_eN9Ar3d1_d-E3laXpSya879A25-JAxU,170
|
300
|
+
edsl/surveys/ConstructDAG.py,sha256=2t5IstNAtVt6jnvFblgtuspXZQU8_JG5hLAwCFdO56w,3269
|
301
|
+
edsl/surveys/DAG.py,sha256=dnIbrfJ_lQ3QEKjpyuo1I6b0kcnW2KMMyPir0A6J4XM,4235
|
302
|
+
edsl/surveys/EditSurvey.py,sha256=tXYWxwU1oUNpY1KYTrmR_OGCr_IT8LBlSLFvy9bAChE,8883
|
303
|
+
edsl/surveys/InstructionHandler.py,sha256=DL2_4yaldixdEONLtgOqXyh_XRwJoKb_avpHbG-dekk,4375
|
304
|
+
edsl/surveys/Memory.py,sha256=-ikOtkkQldGB_BkPCW3o7AYwV5B_pIwlREw7aVCSHaQ,1113
|
305
|
+
edsl/surveys/MemoryManagement.py,sha256=lqgoXsuqoIwmHf_n0Zz2xU1JxvDIV0hdpSkMqJdV2kg,2859
|
306
|
+
edsl/surveys/MemoryPlan.py,sha256=9NNue5Z1FQs-H7yz0kFFDc6yTqJGN9pDcmeY15h3SLY,9052
|
307
|
+
edsl/surveys/Rule.py,sha256=Hou5_sSpvIfBdZNQk8tHFf-q4JT0wrV_kPMGbmLBfgA,12403
|
308
|
+
edsl/surveys/RuleCollection.py,sha256=UC300EOPhjrMc-88eWt5kKBg1pVvKzzwgda2hjHW_sk,14790
|
309
|
+
edsl/surveys/RuleManager.py,sha256=8k1XfTWaJbgjLLJsryBxVSiZ2_YuJPqE750jZEEtVwI,6216
|
310
|
+
edsl/surveys/Simulator.py,sha256=I4_vHNnwe43SAbw7CK1xa45tahAKHfNRbRxGTRXdHuA,2586
|
311
|
+
edsl/surveys/Survey.py,sha256=goK0WmA0DyCgqh9hYt3qnJwp2ZY-RUpwoLUXbFDc28s,47993
|
312
|
+
edsl/surveys/SurveyCSS.py,sha256=fIdiLuXTUq6KuoXXAU_LTHTTe6RchnCmZpj3j7qnt5Y,8796
|
313
|
+
edsl/surveys/SurveyExportMixin.py,sha256=Kvkd2ku2Kemsn2Nw-Yt8GTnGFcUqfEiKznmisAeO7ck,8339
|
314
|
+
edsl/surveys/SurveyFlowVisualization.py,sha256=OLdVZstVuzR_DFulTosRBhpUa9wQ6XJjKbOpvTUCgJw,6467
|
315
|
+
edsl/surveys/SurveyQualtricsImport.py,sha256=SSZv53D1zVhQSfSw-X0_cte0QnkWhE9v922wLn6RMkI,9771
|
316
|
+
edsl/surveys/SurveyToApp.py,sha256=J6n6qhVpIkBvAMSnARQ3sS3zdO5NGisMuZsqR38uFfY,4745
|
317
|
+
edsl/surveys/__init__.py,sha256=NkZrNIiKPf2EnQ1ZJeMSSTZu5UC0zfgfzkK4Pxj_wpk,196
|
318
|
+
edsl/surveys/base.py,sha256=XJHGEbbsH6hlYYkmI4isVLD8guLz8BdhR-eQRL78mc4,1115
|
319
|
+
edsl/surveys/descriptors.py,sha256=j7Fjh2DHHn95GAbLcA3P4yjRIZzih_eu_64SDCk4js0,2176
|
320
|
+
edsl/surveys/instructions/ChangeInstruction.py,sha256=Zlwl21dzXNNXHQIdpg5X3IZAkg_GvPOB7aUXfIh7800,1354
|
321
|
+
edsl/surveys/instructions/Instruction.py,sha256=dqWZUzVON1BA0-uvRR5ZnqA4tDuY8jd8wSugz8dLS8Q,1656
|
322
|
+
edsl/surveys/instructions/InstructionCollection.py,sha256=WMC7ojwIIsgamSm77SnJXwJWY4HPD5sNivisRHQlUJk,3099
|
323
|
+
edsl/surveys/instructions/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
324
|
+
edsl/templates/error_reporting/base.html,sha256=IkV24ZaUCNX303ZqVTWkFsJOnu5BG_SULrKN2YejUxQ,552
|
325
|
+
edsl/templates/error_reporting/exceptions_by_model.html,sha256=7uAWGfhUMey-29Vh6YkN_Qx1lfhC92fsTMxJEVXWPDs,792
|
326
|
+
edsl/templates/error_reporting/exceptions_by_question_name.html,sha256=_q6hSwtO_WhjXLZNLZhRj-qbPzStqYSzT0iECKUAFlg,454
|
327
|
+
edsl/templates/error_reporting/exceptions_by_type.html,sha256=TVsNCAz_G53LSZ-YslM51TUsbwtw7wzCqPwVYO6TVEw,415
|
328
|
+
edsl/templates/error_reporting/interview_details.html,sha256=v4eKeNsk73sW_FXDsqe7TBPsmc7CN9_JO8ASKKziKsE,4043
|
329
|
+
edsl/templates/error_reporting/interviews.html,sha256=x-hD7A0_PIM_8-wDx0SaPlukBe7v338tprZ-qjEt6n0,661
|
330
|
+
edsl/templates/error_reporting/overview.html,sha256=1oTYQpi03OnguG-iudO8FZC7mwR6GryeslDbl0w9ksw,405
|
331
|
+
edsl/templates/error_reporting/performance_plot.html,sha256=NTXFj51VEwew59gLzbR83Lybh88WmFR-fhxm5rmz0Ms,53
|
332
|
+
edsl/templates/error_reporting/report.css,sha256=e0kM4z4fF3xrKIJbbhvrzzh8gMJ8LD7rDu0ut63kg8c,1209
|
333
|
+
edsl/templates/error_reporting/report.html,sha256=CWygdoBM-QXNI8HtqaQMfzspMSn4lUVRTXf6NA9ggqo,4523
|
334
|
+
edsl/templates/error_reporting/report.js,sha256=PtF1N68RmSYB2OG-6ymO14-LcX7LUZTnUDFX0dN6xW4,957
|
335
|
+
edsl/tools/__init__.py,sha256=4iRiX1K0Yh8RGwlUBuzipvFfRrofKqCRQ0SzNK_2oiQ,41
|
336
|
+
edsl/tools/clusters.py,sha256=uvDN76bfHIHS-ykB2iioXu0gKeP_UyD7Q9ee67w_fV4,6132
|
337
|
+
edsl/tools/embeddings.py,sha256=-mHqApiFbGzj_2Cr_VVl_7XiBBDyPB5-6ZO7IsXvaig,677
|
338
|
+
edsl/tools/embeddings_plotting.py,sha256=fznAqLnjF_K8PkJy1C4hBRObm3f8ebDIxQzrqRXlEJM,3564
|
339
|
+
edsl/tools/plotting.py,sha256=NrYiOLHLgXnIdnBDYlRDKtLRZndW767fpvKVamIugwI,3129
|
340
|
+
edsl/tools/summarize.py,sha256=YcdB0IjZn92qv2zVJuxsHfXou810APWYKeaHknsATqM,656
|
341
|
+
edsl/utilities/PrettyList.py,sha256=3NIr2u3aqInQQuYYkxmekTtZgUqbm6arl3eRDEog8iY,1754
|
342
|
+
edsl/utilities/SystemInfo.py,sha256=qTP_aKwECPxtTnbEjJ7F1QqKU9U3rcEEbppg2ilQGuY,792
|
343
|
+
edsl/utilities/__init__.py,sha256=oUWx_h-8OFb1Of2SgIQZuIu7hX_bhDuwCSwksKGWZ6k,544
|
344
|
+
edsl/utilities/ast_utilities.py,sha256=49KDDu-PHYpzDN5cCaDf-ReQH-1dzjT5EG3WVSa8THk,868
|
345
|
+
edsl/utilities/data/Registry.py,sha256=q2DKc7CpG_7l47MxxsSi6DJOs4p1Z3qNx7PV-v8CUOE,176
|
346
|
+
edsl/utilities/data/__init__.py,sha256=pDjGnzC11q4Za8qX5zcg6plcQ_8Qjpb-sAKPwOlKmCY,62
|
347
|
+
edsl/utilities/data/scooter_results.json,sha256=tRtVAI5haLMh_-wjz9it_uk_I1bGe5qdFHsIRQMi_ks,250944
|
348
|
+
edsl/utilities/decorators.py,sha256=rlTSMItwmWUxHQBIEUDxX3lFzgtiT8PnfNavakuf-2M,2319
|
349
|
+
edsl/utilities/gcp_bucket/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
350
|
+
edsl/utilities/gcp_bucket/cloud_storage.py,sha256=dStHsG181YP9ALW-bkyO-sgMWuLV5aaLsnsCOVD8jJw,3472
|
351
|
+
edsl/utilities/interface.py,sha256=AaKpWiwWBwP2swNXmnFlIf3ZFsjfsR5bjXQAW47tD-8,19656
|
352
|
+
edsl/utilities/is_notebook.py,sha256=UAT8LXl7oh2qvUnOWQ5QvO1wDno385a8hHMuPZuYGT8,713
|
353
|
+
edsl/utilities/is_valid_variable_name.py,sha256=k_CEkw2rDjNykx1wBTLYkjzkTZI-3fK9xJlTQggX5nk,332
|
354
|
+
edsl/utilities/naming_utilities.py,sha256=ZIxEe8nX0ZCpcZ14QjnnxBxQ0UBSiNZp6RqC7-gvUCw,4966
|
355
|
+
edsl/utilities/remove_edsl_version.py,sha256=3n2RoXvZ4pH3k-_lc7B-vkeUyHXHX6vKHQStRn5SFpQ,762
|
356
|
+
edsl/utilities/repair_functions.py,sha256=tftmklAqam6LOQQu_-9U44N-llycffhW8LfO63vBmNw,929
|
357
|
+
edsl/utilities/restricted_python.py,sha256=5-_zUhrNbos7pLhDl9nr8d24auRlquR6w-vKkmNjPiA,2060
|
358
|
+
edsl/utilities/utilities.py,sha256=FbI9QYGD4eaHrwZ6ePx51jjpatZqwSPHJhimx-h6HyA,12660
|
359
|
+
edsl-0.1.40.dist-info/LICENSE,sha256=_qszBDs8KHShVYcYzdMz3HNMtH-fKN_p5zjoVAVumFc,1111
|
360
|
+
edsl-0.1.40.dist-info/METADATA,sha256=b_Qbp0IFIJsaj0QHf0_ppCaCoZaiTyV8F-yn5FeP3KU,4760
|
361
|
+
edsl-0.1.40.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
|
362
|
+
edsl-0.1.40.dist-info/RECORD,,
|
@@ -1,24 +0,0 @@
|
|
1
|
-
from docx import Document
|
2
|
-
|
3
|
-
|
4
|
-
class AgentListExportMixin:
|
5
|
-
def docx(self) -> "Document":
|
6
|
-
"Generates a docx document for the survey"
|
7
|
-
doc = Document()
|
8
|
-
|
9
|
-
doc.add_heading("EDSL Auto-Generated Agent Description")
|
10
|
-
|
11
|
-
doc.add_paragraph(f"\n")
|
12
|
-
|
13
|
-
for index, agent in enumerate(self.data):
|
14
|
-
# Add question as a paragraph
|
15
|
-
h = doc.add_paragraph()
|
16
|
-
h.add_run(f"Agent {index + 1}").bold = True
|
17
|
-
|
18
|
-
p = doc.add_paragraph()
|
19
|
-
# p.add_run(agent.persona)
|
20
|
-
for key, value in agent.traits.items():
|
21
|
-
p.add_run(f"{key}: ").bold = True
|
22
|
-
p.add_run(f"{value}\n")
|
23
|
-
|
24
|
-
return doc
|
edsl/coop/old.py
DELETED
@@ -1,31 +0,0 @@
|
|
1
|
-
import uuid
|
2
|
-
|
3
|
-
|
4
|
-
class ResultsAPI:
|
5
|
-
"""
|
6
|
-
While results = None, repr will be calling the api to get the results or the estimated time to completion. When it does, results will be stored here, and the API will no longer be called.
|
7
|
-
"""
|
8
|
-
|
9
|
-
def __init__(self, api_key: str, job_id: str) -> None:
|
10
|
-
self.api_key = api_key
|
11
|
-
self.job_id = job_id
|
12
|
-
self.status = None
|
13
|
-
self.results = None
|
14
|
-
|
15
|
-
def _get_results(self) -> dict:
|
16
|
-
# TODO: API call to get status & results
|
17
|
-
return ("Running", None)
|
18
|
-
|
19
|
-
def __repr__(self) -> str:
|
20
|
-
if self.results is None:
|
21
|
-
self.status, self.results = self._get_results()
|
22
|
-
return f"Results(api_key={self.api_key}, job_id={self.job_id}, status={self.status}, results={self.results})"
|
23
|
-
|
24
|
-
|
25
|
-
def JobRunnerAPI(api_key: str, job_dict: dict) -> ResultsAPI:
|
26
|
-
api_key = api_key
|
27
|
-
job_dict = job_dict
|
28
|
-
# TODO: API call to send job data and return job_id
|
29
|
-
job_id = str(uuid.uuid4())
|
30
|
-
# return a ResultsAPI instance with the job_id
|
31
|
-
return ResultsAPI(api_key, job_id)
|
edsl/data/Database.py
DELETED
@@ -1,141 +0,0 @@
|
|
1
|
-
import os
|
2
|
-
import shutil
|
3
|
-
from contextlib import contextmanager
|
4
|
-
from sqlalchemy import create_engine, event
|
5
|
-
from sqlalchemy.exc import SQLAlchemyError, DatabaseError
|
6
|
-
from sqlalchemy.orm import sessionmaker, scoped_session
|
7
|
-
from sqlalchemy.sql import text
|
8
|
-
from edsl.config import Config, CONFIG
|
9
|
-
from edsl.data import Base
|
10
|
-
from edsl.exceptions import DatabaseConnectionError, DatabaseIntegrityError
|
11
|
-
|
12
|
-
|
13
|
-
class Database:
|
14
|
-
"""The Database class manages the connection to the database."""
|
15
|
-
|
16
|
-
def __init__(self, config: Config = CONFIG):
|
17
|
-
"""Initializes the database connection."""
|
18
|
-
self.database_path = config.get("EDSL_DATABASE_PATH")
|
19
|
-
try:
|
20
|
-
self.engine = create_engine(self.database_path)
|
21
|
-
|
22
|
-
# listener sets WAL mode on connect
|
23
|
-
# @event.listens_for(self.engine, "connect")
|
24
|
-
# def set_wal_mode(dbapi_connection, connection_record):
|
25
|
-
# cursor = dbapi_connection.cursor()
|
26
|
-
# cursor.execute("PRAGMA journal_mode=WAL;")
|
27
|
-
# cursor.close()
|
28
|
-
|
29
|
-
# test connection
|
30
|
-
with self.engine.connect() as _:
|
31
|
-
pass
|
32
|
-
Base.metadata.create_all(bind=self.engine)
|
33
|
-
except DatabaseError as e:
|
34
|
-
if "malformed" in str(e):
|
35
|
-
file_path, temp_path = self.paths
|
36
|
-
if temp_path and os.path.exists(temp_path):
|
37
|
-
raise DatabaseIntegrityError(
|
38
|
-
f"Your database is malformed. "
|
39
|
-
f"Try replacing your main database file with the temp copy.\n"
|
40
|
-
f"Database file: {file_path}\n"
|
41
|
-
f"Temp file: {temp_path}"
|
42
|
-
)
|
43
|
-
else:
|
44
|
-
raise DatabaseIntegrityError(
|
45
|
-
f"Your database is malformed. "
|
46
|
-
f"Please delete your database file.\n"
|
47
|
-
f"Database file: {file_path}\n"
|
48
|
-
)
|
49
|
-
|
50
|
-
except SQLAlchemyError as e:
|
51
|
-
raise DatabaseConnectionError(str(e)) from None
|
52
|
-
self.SessionLocal = scoped_session(
|
53
|
-
sessionmaker(autocommit=False, autoflush=False, bind=self.engine)
|
54
|
-
)
|
55
|
-
|
56
|
-
@contextmanager
|
57
|
-
def get_db(self):
|
58
|
-
"""Generator that yields a database session."""
|
59
|
-
db = None
|
60
|
-
try:
|
61
|
-
db = self.SessionLocal()
|
62
|
-
yield db
|
63
|
-
except SQLAlchemyError as e:
|
64
|
-
raise DatabaseConnectionError(str(e)) from None
|
65
|
-
finally:
|
66
|
-
if db is not None:
|
67
|
-
self.SessionLocal.remove()
|
68
|
-
|
69
|
-
def _is_healthy(self):
|
70
|
-
"""Returns True if the database is healthy, False otherwise."""
|
71
|
-
try:
|
72
|
-
with self.engine.connect() as connection:
|
73
|
-
result = connection.execute(text("PRAGMA integrity_check"))
|
74
|
-
check_result = result.fetchone()
|
75
|
-
if check_result[0] == "ok":
|
76
|
-
return True
|
77
|
-
else:
|
78
|
-
return False
|
79
|
-
except SQLAlchemyError as e:
|
80
|
-
return False
|
81
|
-
|
82
|
-
@property
|
83
|
-
def paths(self) -> tuple:
|
84
|
-
"""Returns the (db_path, temp_path), or (None, None) if not applicable."""
|
85
|
-
if (
|
86
|
-
self.database_path.startswith("sqlite:///")
|
87
|
-
and "memory" not in self.database_path
|
88
|
-
):
|
89
|
-
file_path = self.database_path.replace("sqlite:///", "")
|
90
|
-
temp_path = f"{file_path}_temp"
|
91
|
-
return file_path, temp_path
|
92
|
-
else:
|
93
|
-
return None, None
|
94
|
-
|
95
|
-
def _create_copy(self) -> None:
|
96
|
-
"""Creates a copy of the database."""
|
97
|
-
file_path, temp_path = self.paths
|
98
|
-
if file_path:
|
99
|
-
try:
|
100
|
-
shutil.copyfile(file_path, temp_path)
|
101
|
-
except IOError as e:
|
102
|
-
print(f"Error creating a copy of the database: {e}")
|
103
|
-
raise e
|
104
|
-
|
105
|
-
def _delete_copy(self) -> None:
|
106
|
-
"""Deletes a copy of the database."""
|
107
|
-
file_path, temp_path = self.paths
|
108
|
-
if file_path and os.path.exists(temp_path):
|
109
|
-
os.remove(temp_path)
|
110
|
-
|
111
|
-
def _health_check_pre_run(self):
|
112
|
-
"""Performs a health check before running a job."""
|
113
|
-
# create a copy of the database if it is healthy
|
114
|
-
if self._is_healthy():
|
115
|
-
self._create_copy()
|
116
|
-
else:
|
117
|
-
file_path, temp_path = self.paths
|
118
|
-
raise DatabaseIntegrityError(
|
119
|
-
f"Could not run job because your database is not healthy.\n"
|
120
|
-
f"Try replacing your main database file with the temp copy.\n"
|
121
|
-
f"Database file: {file_path}\n"
|
122
|
-
f"Temp file: {temp_path}"
|
123
|
-
)
|
124
|
-
|
125
|
-
def _health_check_post_run(self):
|
126
|
-
"""Performs a health check before running a job."""
|
127
|
-
if self._is_healthy():
|
128
|
-
self._delete_copy()
|
129
|
-
else:
|
130
|
-
file_path, temp_path = self.paths
|
131
|
-
print(
|
132
|
-
f"Running this job malformed your database.\n"
|
133
|
-
f"Try replacing your main database file with the temp copy.\n"
|
134
|
-
f"Database file: {file_path}\n"
|
135
|
-
f"Temp file: {temp_path}"
|
136
|
-
)
|
137
|
-
|
138
|
-
|
139
|
-
# Note: Python modules are singletons. As such, once `database` is imported
|
140
|
-
# the same instance of it is reused across the application.
|
141
|
-
database = Database()
|