edsl 0.1.33.dev1__py3-none-any.whl → 0.1.33.dev2__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/TemplateLoader.py +24 -0
- edsl/__init__.py +8 -4
- edsl/agents/Agent.py +46 -14
- edsl/agents/AgentList.py +43 -0
- edsl/agents/Invigilator.py +125 -212
- edsl/agents/InvigilatorBase.py +140 -32
- edsl/agents/PromptConstructionMixin.py +43 -66
- edsl/agents/__init__.py +1 -0
- edsl/auto/AutoStudy.py +117 -0
- edsl/auto/StageBase.py +230 -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 +73 -0
- edsl/auto/SurveyCreatorPipeline.py +21 -0
- edsl/auto/utilities.py +224 -0
- edsl/config.py +38 -39
- edsl/coop/PriceFetcher.py +58 -0
- edsl/coop/coop.py +39 -5
- edsl/data/Cache.py +35 -1
- edsl/data_transfer_models.py +120 -38
- edsl/enums.py +2 -0
- edsl/exceptions/language_models.py +25 -1
- edsl/exceptions/questions.py +62 -5
- edsl/exceptions/results.py +4 -0
- edsl/inference_services/AnthropicService.py +13 -11
- edsl/inference_services/AwsBedrock.py +19 -17
- edsl/inference_services/AzureAI.py +37 -20
- edsl/inference_services/GoogleService.py +16 -12
- edsl/inference_services/GroqService.py +2 -0
- edsl/inference_services/InferenceServiceABC.py +24 -0
- edsl/inference_services/MistralAIService.py +120 -0
- edsl/inference_services/OpenAIService.py +41 -50
- edsl/inference_services/TestService.py +71 -0
- edsl/inference_services/models_available_cache.py +0 -6
- edsl/inference_services/registry.py +4 -0
- edsl/jobs/Answers.py +10 -12
- edsl/jobs/FailedQuestion.py +78 -0
- edsl/jobs/Jobs.py +18 -13
- edsl/jobs/buckets/TokenBucket.py +39 -14
- edsl/jobs/interviews/Interview.py +297 -77
- edsl/jobs/interviews/InterviewExceptionEntry.py +83 -19
- edsl/jobs/interviews/interview_exception_tracking.py +0 -70
- edsl/jobs/interviews/retry_management.py +3 -1
- edsl/jobs/runners/JobsRunnerAsyncio.py +116 -70
- edsl/jobs/runners/JobsRunnerStatusMixin.py +1 -1
- edsl/jobs/tasks/QuestionTaskCreator.py +30 -23
- edsl/jobs/tasks/TaskHistory.py +131 -213
- edsl/language_models/LanguageModel.py +239 -129
- edsl/language_models/ModelList.py +2 -2
- edsl/language_models/RegisterLanguageModelsMeta.py +14 -29
- edsl/language_models/fake_openai_call.py +15 -0
- edsl/language_models/fake_openai_service.py +61 -0
- edsl/language_models/registry.py +15 -2
- edsl/language_models/repair.py +0 -19
- edsl/language_models/utilities.py +61 -0
- edsl/prompts/Prompt.py +52 -2
- edsl/questions/AnswerValidatorMixin.py +23 -26
- edsl/questions/QuestionBase.py +273 -242
- edsl/questions/QuestionBaseGenMixin.py +133 -0
- edsl/questions/QuestionBasePromptsMixin.py +266 -0
- edsl/questions/QuestionBudget.py +6 -0
- edsl/questions/QuestionCheckBox.py +227 -35
- edsl/questions/QuestionExtract.py +98 -27
- edsl/questions/QuestionFreeText.py +46 -29
- edsl/questions/QuestionFunctional.py +7 -0
- edsl/questions/QuestionList.py +141 -22
- edsl/questions/QuestionMultipleChoice.py +173 -64
- edsl/questions/QuestionNumerical.py +87 -46
- edsl/questions/QuestionRank.py +182 -24
- edsl/questions/RegisterQuestionsMeta.py +31 -12
- edsl/questions/ResponseValidatorABC.py +169 -0
- edsl/questions/__init__.py +3 -4
- edsl/questions/decorators.py +21 -0
- edsl/questions/derived/QuestionLikertFive.py +10 -5
- edsl/questions/derived/QuestionLinearScale.py +11 -1
- edsl/questions/derived/QuestionTopK.py +6 -0
- edsl/questions/derived/QuestionYesNo.py +16 -1
- edsl/questions/descriptors.py +43 -7
- 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_registry.py +6 -2
- edsl/questions/templates/__init__.py +0 -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/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/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 +8 -0
- edsl/questions/templates/numerical/question_presentation.jinja +7 -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/Dataset.py +20 -0
- edsl/results/DatasetExportMixin.py +41 -47
- edsl/results/DatasetTree.py +145 -0
- edsl/results/Result.py +32 -5
- edsl/results/Results.py +131 -45
- edsl/results/ResultsDBMixin.py +3 -3
- edsl/results/Selector.py +118 -0
- edsl/results/tree_explore.py +115 -0
- edsl/scenarios/Scenario.py +10 -4
- edsl/scenarios/ScenarioList.py +348 -39
- edsl/scenarios/ScenarioListExportMixin.py +9 -0
- edsl/study/SnapShot.py +8 -1
- edsl/surveys/RuleCollection.py +2 -2
- edsl/surveys/Survey.py +634 -315
- edsl/surveys/SurveyExportMixin.py +71 -9
- edsl/surveys/SurveyFlowVisualizationMixin.py +2 -1
- edsl/surveys/SurveyQualtricsImport.py +75 -4
- edsl/surveys/instructions/ChangeInstruction.py +47 -0
- edsl/surveys/instructions/Instruction.py +34 -0
- edsl/surveys/instructions/InstructionCollection.py +77 -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 +111 -0
- edsl/templates/error_reporting/interviews.html +10 -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-0.1.33.dev1.dist-info → edsl-0.1.33.dev2.dist-info}/METADATA +4 -2
- edsl-0.1.33.dev2.dist-info/RECORD +289 -0
- edsl/jobs/interviews/InterviewTaskBuildingMixin.py +0 -286
- edsl/utilities/gcp_bucket/simple_example.py +0 -9
- edsl-0.1.33.dev1.dist-info/RECORD +0 -209
- {edsl-0.1.33.dev1.dist-info → edsl-0.1.33.dev2.dist-info}/LICENSE +0 -0
- {edsl-0.1.33.dev1.dist-info → edsl-0.1.33.dev2.dist-info}/WHEEL +0 -0
@@ -1,286 +0,0 @@
|
|
1
|
-
"""This module contains the Interview class, which is responsible for conducting an interview asynchronously."""
|
2
|
-
|
3
|
-
from __future__ import annotations
|
4
|
-
import asyncio
|
5
|
-
import time
|
6
|
-
import traceback
|
7
|
-
from typing import Generator, Union
|
8
|
-
|
9
|
-
from edsl import CONFIG
|
10
|
-
from edsl.exceptions import InterviewTimeoutError
|
11
|
-
|
12
|
-
# from edsl.questions.QuestionBase import QuestionBase
|
13
|
-
from edsl.surveys.base import EndOfSurvey
|
14
|
-
from edsl.jobs.buckets.ModelBuckets import ModelBuckets
|
15
|
-
from edsl.jobs.interviews.InterviewExceptionEntry import InterviewExceptionEntry
|
16
|
-
from edsl.jobs.interviews.retry_management import retry_strategy
|
17
|
-
from edsl.jobs.tasks.task_status_enum import TaskStatus
|
18
|
-
from edsl.jobs.tasks.QuestionTaskCreator import QuestionTaskCreator
|
19
|
-
|
20
|
-
# from edsl.agents.InvigilatorBase import InvigilatorBase
|
21
|
-
|
22
|
-
from rich.console import Console
|
23
|
-
from rich.traceback import Traceback
|
24
|
-
|
25
|
-
TIMEOUT = float(CONFIG.get("EDSL_API_TIMEOUT"))
|
26
|
-
|
27
|
-
|
28
|
-
def frame_summary_to_dict(frame):
|
29
|
-
"""
|
30
|
-
Convert a FrameSummary object to a dictionary.
|
31
|
-
|
32
|
-
:param frame: A traceback FrameSummary object
|
33
|
-
:return: A dictionary containing the frame's details
|
34
|
-
"""
|
35
|
-
return {
|
36
|
-
"filename": frame.filename,
|
37
|
-
"lineno": frame.lineno,
|
38
|
-
"name": frame.name,
|
39
|
-
"line": frame.line,
|
40
|
-
}
|
41
|
-
|
42
|
-
|
43
|
-
class InterviewTaskBuildingMixin:
|
44
|
-
def _build_invigilators(
|
45
|
-
self, debug: bool
|
46
|
-
) -> Generator["InvigilatorBase", None, None]:
|
47
|
-
"""Create an invigilator for each question.
|
48
|
-
|
49
|
-
:param debug: whether to use debug mode, in which case `InvigilatorDebug` is used.
|
50
|
-
|
51
|
-
An invigilator is responsible for answering a particular question in the survey.
|
52
|
-
"""
|
53
|
-
for question in self.survey.questions:
|
54
|
-
yield self._get_invigilator(question=question, debug=debug)
|
55
|
-
|
56
|
-
def _get_invigilator(self, question: "QuestionBase", debug: bool) -> "Invigilator":
|
57
|
-
"""Return an invigilator for the given question.
|
58
|
-
|
59
|
-
:param question: the question to be answered
|
60
|
-
:param debug: whether to use debug mode, in which case `InvigilatorDebug` is used.
|
61
|
-
"""
|
62
|
-
invigilator = self.agent.create_invigilator(
|
63
|
-
question=question,
|
64
|
-
scenario=self.scenario,
|
65
|
-
model=self.model,
|
66
|
-
debug=debug,
|
67
|
-
survey=self.survey,
|
68
|
-
memory_plan=self.survey.memory_plan,
|
69
|
-
current_answers=self.answers,
|
70
|
-
iteration=self.iteration,
|
71
|
-
cache=self.cache,
|
72
|
-
sidecar_model=self.sidecar_model,
|
73
|
-
)
|
74
|
-
"""Return an invigilator for the given question."""
|
75
|
-
return invigilator
|
76
|
-
|
77
|
-
def _build_question_tasks(
|
78
|
-
self,
|
79
|
-
debug: bool,
|
80
|
-
model_buckets: ModelBuckets,
|
81
|
-
) -> list[asyncio.Task]:
|
82
|
-
"""Create a task for each question, with dependencies on the questions that must be answered before this one can be answered.
|
83
|
-
|
84
|
-
:param debug: whether to use debug mode, in which case `InvigilatorDebug` is used.
|
85
|
-
:param model_buckets: the model buckets used to track and control usage rates.
|
86
|
-
"""
|
87
|
-
tasks = []
|
88
|
-
for question in self.survey.questions:
|
89
|
-
tasks_that_must_be_completed_before = list(
|
90
|
-
self._get_tasks_that_must_be_completed_before(
|
91
|
-
tasks=tasks, question=question
|
92
|
-
)
|
93
|
-
)
|
94
|
-
question_task = self._create_question_task(
|
95
|
-
question=question,
|
96
|
-
tasks_that_must_be_completed_before=tasks_that_must_be_completed_before,
|
97
|
-
model_buckets=model_buckets,
|
98
|
-
debug=debug,
|
99
|
-
iteration=self.iteration,
|
100
|
-
)
|
101
|
-
tasks.append(question_task)
|
102
|
-
return tuple(tasks) # , invigilators
|
103
|
-
|
104
|
-
def _get_tasks_that_must_be_completed_before(
|
105
|
-
self, *, tasks: list[asyncio.Task], question: "QuestionBase"
|
106
|
-
) -> Generator[asyncio.Task, None, None]:
|
107
|
-
"""Return the tasks that must be completed before the given question can be answered.
|
108
|
-
|
109
|
-
:param tasks: a list of tasks that have been created so far.
|
110
|
-
:param question: the question for which we are determining dependencies.
|
111
|
-
|
112
|
-
If a question has no dependencies, this will be an empty list, [].
|
113
|
-
"""
|
114
|
-
parents_of_focal_question = self.dag.get(question.question_name, [])
|
115
|
-
for parent_question_name in parents_of_focal_question:
|
116
|
-
yield tasks[self.to_index[parent_question_name]]
|
117
|
-
|
118
|
-
def _create_question_task(
|
119
|
-
self,
|
120
|
-
*,
|
121
|
-
question: "QuestionBase",
|
122
|
-
tasks_that_must_be_completed_before: list[asyncio.Task],
|
123
|
-
model_buckets: ModelBuckets,
|
124
|
-
debug: bool,
|
125
|
-
iteration: int = 0,
|
126
|
-
) -> asyncio.Task:
|
127
|
-
"""Create a task that depends on the passed-in dependencies that are awaited before the task is run.
|
128
|
-
|
129
|
-
:param question: the question to be answered. This is the question we are creating a task for.
|
130
|
-
:param tasks_that_must_be_completed_before: the tasks that must be completed before the focal task is run.
|
131
|
-
:param model_buckets: the model buckets used to track and control usage rates.
|
132
|
-
:param debug: whether to use debug mode, in which case `InvigilatorDebug` is used.
|
133
|
-
:param iteration: the iteration number for the interview.
|
134
|
-
|
135
|
-
The task is created by a `QuestionTaskCreator`, which is responsible for creating the task and managing its dependencies.
|
136
|
-
It is passed a reference to the function that will be called to answer the question.
|
137
|
-
It is passed a list "tasks_that_must_be_completed_before" that are awaited before the task is run.
|
138
|
-
These are added as a dependency to the focal task.
|
139
|
-
"""
|
140
|
-
task_creator = QuestionTaskCreator(
|
141
|
-
question=question,
|
142
|
-
answer_question_func=self._answer_question_and_record_task,
|
143
|
-
token_estimator=self._get_estimated_request_tokens,
|
144
|
-
model_buckets=model_buckets,
|
145
|
-
iteration=iteration,
|
146
|
-
)
|
147
|
-
for task in tasks_that_must_be_completed_before:
|
148
|
-
task_creator.add_dependency(task)
|
149
|
-
|
150
|
-
self.task_creators.update(
|
151
|
-
{question.question_name: task_creator}
|
152
|
-
) # track this task creator
|
153
|
-
return task_creator.generate_task(debug)
|
154
|
-
|
155
|
-
def _get_estimated_request_tokens(self, question) -> float:
|
156
|
-
"""Estimate the number of tokens that will be required to run the focal task."""
|
157
|
-
invigilator = self._get_invigilator(question=question, debug=False)
|
158
|
-
# TODO: There should be a way to get a more accurate estimate.
|
159
|
-
combined_text = ""
|
160
|
-
for prompt in invigilator.get_prompts().values():
|
161
|
-
if hasattr(prompt, "text"):
|
162
|
-
combined_text += prompt.text
|
163
|
-
elif isinstance(prompt, str):
|
164
|
-
combined_text += prompt
|
165
|
-
else:
|
166
|
-
raise ValueError(f"Prompt is of type {type(prompt)}")
|
167
|
-
return len(combined_text) / 4.0
|
168
|
-
|
169
|
-
async def _answer_question_and_record_task(
|
170
|
-
self,
|
171
|
-
*,
|
172
|
-
question: "QuestionBase",
|
173
|
-
debug: bool,
|
174
|
-
task=None,
|
175
|
-
) -> "AgentResponseDict":
|
176
|
-
"""Answer a question and records the task.
|
177
|
-
|
178
|
-
This in turn calls the the passed-in agent's async_answer_question method, which returns a response dictionary.
|
179
|
-
Note that is updates answers dictionary with the response.
|
180
|
-
"""
|
181
|
-
from edsl.data_transfer_models import AgentResponseDict
|
182
|
-
|
183
|
-
async def _inner():
|
184
|
-
try:
|
185
|
-
invigilator = self._get_invigilator(question, debug=debug)
|
186
|
-
|
187
|
-
if self._skip_this_question(question):
|
188
|
-
return invigilator.get_failed_task_result()
|
189
|
-
|
190
|
-
response: AgentResponseDict = await self._attempt_to_answer_question(
|
191
|
-
invigilator, task
|
192
|
-
)
|
193
|
-
|
194
|
-
self._add_answer(response=response, question=question)
|
195
|
-
|
196
|
-
self._cancel_skipped_questions(question)
|
197
|
-
return AgentResponseDict(**response)
|
198
|
-
except Exception as e:
|
199
|
-
raise e
|
200
|
-
|
201
|
-
skip_rety = getattr(self, "skip_retry", False)
|
202
|
-
if not skip_rety:
|
203
|
-
_inner = retry_strategy(_inner)
|
204
|
-
|
205
|
-
return await _inner()
|
206
|
-
|
207
|
-
def _add_answer(
|
208
|
-
self, response: "AgentResponseDict", question: "QuestionBase"
|
209
|
-
) -> None:
|
210
|
-
"""Add the answer to the answers dictionary.
|
211
|
-
|
212
|
-
:param response: the response to the question.
|
213
|
-
:param question: the question that was answered.
|
214
|
-
"""
|
215
|
-
self.answers.add_answer(response=response, question=question)
|
216
|
-
|
217
|
-
def _skip_this_question(self, current_question: "QuestionBase") -> bool:
|
218
|
-
"""Determine if the current question should be skipped.
|
219
|
-
|
220
|
-
:param current_question: the question to be answered.
|
221
|
-
"""
|
222
|
-
current_question_index = self.to_index[current_question.question_name]
|
223
|
-
|
224
|
-
answers = self.answers | self.scenario | self.agent["traits"]
|
225
|
-
skip = self.survey.rule_collection.skip_question_before_running(
|
226
|
-
current_question_index, answers
|
227
|
-
)
|
228
|
-
return skip
|
229
|
-
|
230
|
-
def _handle_exception(self, e, question_name: str, task=None):
|
231
|
-
exception_entry = InterviewExceptionEntry(e)
|
232
|
-
if task:
|
233
|
-
task.task_status = TaskStatus.FAILED
|
234
|
-
self.exceptions.add(question_name, exception_entry)
|
235
|
-
|
236
|
-
async def _attempt_to_answer_question(
|
237
|
-
self, invigilator: "InvigilatorBase", task: asyncio.Task
|
238
|
-
) -> "AgentResponseDict":
|
239
|
-
"""Attempt to answer the question, and handle exceptions.
|
240
|
-
|
241
|
-
:param invigilator: the invigilator that will answer the question.
|
242
|
-
:param task: the task that is being run.
|
243
|
-
|
244
|
-
"""
|
245
|
-
try:
|
246
|
-
return await asyncio.wait_for(
|
247
|
-
invigilator.async_answer_question(), timeout=TIMEOUT
|
248
|
-
)
|
249
|
-
except asyncio.TimeoutError as e:
|
250
|
-
self._handle_exception(e, invigilator.question.question_name, task)
|
251
|
-
raise InterviewTimeoutError(f"Task timed out after {TIMEOUT} seconds.")
|
252
|
-
except Exception as e:
|
253
|
-
self._handle_exception(e, invigilator.question.question_name, task)
|
254
|
-
raise e
|
255
|
-
|
256
|
-
def _cancel_skipped_questions(self, current_question: QuestionBase) -> None:
|
257
|
-
"""Cancel the tasks for questions that are skipped.
|
258
|
-
|
259
|
-
:param current_question: the question that was just answered.
|
260
|
-
|
261
|
-
It first determines the next question, given the current question and the current answers.
|
262
|
-
If the next question is the end of the survey, it cancels all remaining tasks.
|
263
|
-
If the next question is after the current question, it cancels all tasks between the current question and the next question.
|
264
|
-
"""
|
265
|
-
current_question_index: int = self.to_index[current_question.question_name]
|
266
|
-
|
267
|
-
next_question: Union[
|
268
|
-
int, EndOfSurvey
|
269
|
-
] = self.survey.rule_collection.next_question(
|
270
|
-
q_now=current_question_index,
|
271
|
-
answers=self.answers | self.scenario | self.agent["traits"],
|
272
|
-
)
|
273
|
-
|
274
|
-
next_question_index = next_question.next_q
|
275
|
-
|
276
|
-
def cancel_between(start, end):
|
277
|
-
"""Cancel the tasks between the start and end indices."""
|
278
|
-
for i in range(start, end):
|
279
|
-
self.tasks[i].cancel()
|
280
|
-
|
281
|
-
if next_question_index == EndOfSurvey:
|
282
|
-
cancel_between(current_question_index + 1, len(self.survey.questions))
|
283
|
-
return
|
284
|
-
|
285
|
-
if next_question_index > (current_question_index + 1):
|
286
|
-
cancel_between(current_question_index + 1, next_question_index)
|
@@ -1,209 +0,0 @@
|
|
1
|
-
edsl/Base.py,sha256=ttNxUotSd9LSEJl2w6LdMtT78d0nMQvYDJ0q4JkqBfg,8945
|
2
|
-
edsl/BaseDiff.py,sha256=RoVEh52UJs22yMa7k7jv8se01G62jJNWnBzaZngo-Ug,8260
|
3
|
-
edsl/__init__.py,sha256=E6PkWI_owu8AUc4uJs2XWDVozqSbcRWzsIqf8_Kskho,1631
|
4
|
-
edsl/__version__.py,sha256=X6lFB08-Y7atQgG3fk8iymIvdiZo3YA8OnNvAv2d2Zc,28
|
5
|
-
edsl/agents/Agent.py,sha256=qNJsQkN6HuTKqJrQbuUEgRX3Wo7Dwukle0oNWPi0UIE,27191
|
6
|
-
edsl/agents/AgentList.py,sha256=_MsdeOEgaANAceLIXwuLC22mwlBn0ruGX4GEqz8_SSY,9467
|
7
|
-
edsl/agents/Invigilator.py,sha256=8nv98bjfal6Q-GVmsxj5Isqn-GLqXDXEijSai3KAbgQ,10923
|
8
|
-
edsl/agents/InvigilatorBase.py,sha256=ncha1HF2V1Dz4f50Gekg6AzUXCD2Af82ztfSJZbgOHY,7469
|
9
|
-
edsl/agents/PromptConstructionMixin.py,sha256=rC86neoY1-u5cIBozQalvVR8GUS6AMx76sSia8oz2Eg,17320
|
10
|
-
edsl/agents/__init__.py,sha256=a3H1lxDwu9HR8fwh79C5DgxPSFv_bE2rzQ6y1D8Ba5c,80
|
11
|
-
edsl/agents/descriptors.py,sha256=m8ND3-2-JbgNX1HGakBNLIeemwsgYa1mQxYO9GW33hw,2934
|
12
|
-
edsl/base/Base.py,sha256=DShsfI6A2ojg42muPFpVtUgTX33pnqT5vtN0SRlr-9Q,8866
|
13
|
-
edsl/config.py,sha256=CVdmS8L7nNAas_N9kLOVDUXqsKKLSUwvS62eFHd4xbw,6245
|
14
|
-
edsl/conjure/AgentConstructionMixin.py,sha256=qLLYJH02HotVwBUYzaHs4QW0t5nsC3NX15qxQLzEwLI,5702
|
15
|
-
edsl/conjure/Conjure.py,sha256=JaCuAm3rmqjh11_X8PXgvPsVHGql3yTn9JEzVlzOUVU,2019
|
16
|
-
edsl/conjure/InputData.py,sha256=RdFgkzzayddSTd6vcwBB8LC796YBj94pciwrQx9nBtg,22003
|
17
|
-
edsl/conjure/InputDataCSV.py,sha256=m4hHSQogxt7LNcGNxcGRkrbdGy8pIQu5KvXhIEt9i6k,1684
|
18
|
-
edsl/conjure/InputDataMixinQuestionStats.py,sha256=Jav5pqYCLSQ1pAbGV8O9VCBu0vL8Q6pteSEhRKrONuw,6256
|
19
|
-
edsl/conjure/InputDataPyRead.py,sha256=phGmzVi06jdbcxgngAp_lEawGkJr5dAC2B4ho5IrAy4,3064
|
20
|
-
edsl/conjure/InputDataSPSS.py,sha256=lv7NK8lpUfjsWh8h9MpqQrCjJX6Oyg3tIOrXcQYcS_4,223
|
21
|
-
edsl/conjure/InputDataStata.py,sha256=WbA7oUGHgHJgugKjakXzpFfzWxTI4bXGGSZLxM1-tEM,224
|
22
|
-
edsl/conjure/QuestionOptionMixin.py,sha256=RSLZ7AmA65MfwyxKKjqprR9FdkLP6MsCcmTbJoqu-MM,2870
|
23
|
-
edsl/conjure/QuestionTypeMixin.py,sha256=L2vU207aeezlI1OuJ4I4SdtFCWBZzE-mBk7VwnTghO8,892
|
24
|
-
edsl/conjure/RawQuestion.py,sha256=lo8k1aln4RfnfeS6OukzwC7P_cRe2LVZxcL6uwmim6A,2116
|
25
|
-
edsl/conjure/SurveyResponses.py,sha256=fdJNFasSXVf7S5KCsYE9WB6w17q7VRylzw0aD5zGO_M,191
|
26
|
-
edsl/conjure/__init__.py,sha256=1lPYFjV73GzYYSXiTyxopM4nKcXVHumEEo0fe06DbMo,535
|
27
|
-
edsl/conjure/examples/placeholder.txt,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
28
|
-
edsl/conjure/naming_utilities.py,sha256=8uoGaCPZQKLwz2HudtsFSovivTGumQrFYxXxck5WUZQ,4964
|
29
|
-
edsl/conjure/utilities.py,sha256=yRdOJx9KIpWXMx41Bbfysx7Zd4v2ROwca5L4T1rmtQM,5539
|
30
|
-
edsl/conversation/Conversation.py,sha256=NdWH62XpcF6hoaG0ScMho_c3TO7PfBnbdlppUN-j07k,7627
|
31
|
-
edsl/conversation/car_buying.py,sha256=Quh2Q8O9YoCyTKJUy3li376QFIOcL1gX0y89w3wlSl4,1950
|
32
|
-
edsl/conversation/mug_negotiation.py,sha256=mjvAqErD4AjN3G2za2c-X-3axOShW-zAJUeiJqTxVPA,2616
|
33
|
-
edsl/conversation/next_speaker_utilities.py,sha256=bqr5JglCd6bdLc9IZ5zGOAsmN2F4ERiubSMYvZIG7qk,3629
|
34
|
-
edsl/coop/__init__.py,sha256=4iZCwJSzJVyjBYk8ggGxY2kZjq9dXVT1jhyPDNyew4I,115
|
35
|
-
edsl/coop/coop.py,sha256=p2JvhzUpjXEaiFWafCpkfsPIsH2BqV9ePAJCKsKfFOo,27138
|
36
|
-
edsl/coop/utils.py,sha256=UZwljKYW_Yjw7RYcjOg3SW7fn1pyHQfJ1fM48TBNoss,3601
|
37
|
-
edsl/data/Cache.py,sha256=aR9ydTFvUWiRJZd2G7SLFFtZaS2At8ArbQ1SAhYZBDs,15629
|
38
|
-
edsl/data/CacheEntry.py,sha256=_5UiFaJQu_U-Z1_lEPt-h6Gaidp2Eunk02wOd3Ni3MQ,7252
|
39
|
-
edsl/data/CacheHandler.py,sha256=DxbfeT2nZGRu8yQkbWr2tyEnhNiClevMsd5KZMCq2f0,4793
|
40
|
-
edsl/data/SQLiteDict.py,sha256=V5Nfnxctgh4Iblqcw1KmbnkjtfmWrrombROSQ3mvg6A,8979
|
41
|
-
edsl/data/__init__.py,sha256=KBNGGEuGHq--D-TlpAQmvv_If906dJc1Gsy028zOx78,170
|
42
|
-
edsl/data/orm.py,sha256=Jz6rvw5SrlxwysTL0QI9r68EflKxeEBmf6j6himHDS8,238
|
43
|
-
edsl/data_transfer_models.py,sha256=ORcI-g_oUE8EofLvHQKnWC5ar-IgZiXGY2bIpTGAZyQ,1157
|
44
|
-
edsl/enums.py,sha256=Ef-3pvC-uCMPYwdUrxeCo4Xx3zoOQiimU3W_vhKCir4,5077
|
45
|
-
edsl/exceptions/__init__.py,sha256=HVg-U-rJ0fRoG9Rws6gnK5S9B68SkPWDPsoD6KpMZ-A,1370
|
46
|
-
edsl/exceptions/agents.py,sha256=3SORFwFbMGrF6-vAL2GrKEVdPcXo7md_k2oYufnVXHA,673
|
47
|
-
edsl/exceptions/configuration.py,sha256=qH2sInNTndKlCLAaNgaXHyRFdKQHL7-dElB_j8wz9g4,351
|
48
|
-
edsl/exceptions/coop.py,sha256=xDr7k_Tir6L5AxO6GMmoFyUjZ3DIenPQflpUkaTqJl0,38
|
49
|
-
edsl/exceptions/data.py,sha256=K24CjgwFiMWxrF1Z2dF6F7Vfrge_y9kMK_wsYYSaroU,209
|
50
|
-
edsl/exceptions/general.py,sha256=zAyJnppPjjxQAn6X3A5fetmv5FUR7kQDU58vwBKvAks,1114
|
51
|
-
edsl/exceptions/jobs.py,sha256=sSUATmzBIN1oINWuwPExxPqIWmfCo0XYj_yR4dJzVjo,803
|
52
|
-
edsl/exceptions/language_models.py,sha256=KDChmr2rVGa1lj57i9-QGSLYTOeguRYyF2z8FyXEplA,1017
|
53
|
-
edsl/exceptions/prompts.py,sha256=vD_reI-RVKWYHYozenEmhmB7Rb1sIiXghgNUtbVGBUo,247
|
54
|
-
edsl/exceptions/questions.py,sha256=9z6RI7HRH-UMrnIlt28VTj9deCSbD1Frmpqi0H6YtF0,534
|
55
|
-
edsl/exceptions/results.py,sha256=cn6Zb86Y648ulN3RYXb52HGv1NT3ykBfE6g2Xu8TeIw,325
|
56
|
-
edsl/exceptions/surveys.py,sha256=lADtr-tvPmUYSfRy3TdkTV5SzZfShlMgCzm-ZGYRlGk,557
|
57
|
-
edsl/inference_services/AnthropicService.py,sha256=tjYRJRIvQ7Z6uCYdqxm5ZlVjZdVZCnHtQ6QGHT59PXs,2822
|
58
|
-
edsl/inference_services/AwsBedrock.py,sha256=shSh0QXyQC3c0KPfUi-y74TGFm1NxTSK6x9FtXi5ptI,3971
|
59
|
-
edsl/inference_services/AzureAI.py,sha256=9D_uZ_OakJY3JLIioCdpvX4jwerrfizLu86KDWnV_2g,8041
|
60
|
-
edsl/inference_services/DeepInfraService.py,sha256=fWlH5sCNxf8eHPHxPPxJMEVWpCM9sDenkC8IZYqtXfA,515
|
61
|
-
edsl/inference_services/GoogleService.py,sha256=IwSwXr7khvHjpDzgiW5PRVKMhI2wQ9D1_H1MRnHjefU,2732
|
62
|
-
edsl/inference_services/GroqService.py,sha256=vcHiMqdo4eryg2pOk2SfTNpTnvCrx8qkIwtJjVPDnZU,433
|
63
|
-
edsl/inference_services/InferenceServiceABC.py,sha256=H6jW2gDKTLC3xgmqiSBdX4pGY1oauEO8VqGZoB3qvnQ,1790
|
64
|
-
edsl/inference_services/InferenceServicesCollection.py,sha256=EDyxnoSjGXhWob_ost7U8WUYjn1jgL_noB0-VlXBnOo,2810
|
65
|
-
edsl/inference_services/OllamaService.py,sha256=oro9CRl8IUE2Ro-zE69Cr4Zaf6Gdw29XW5CFU-46E0k,498
|
66
|
-
edsl/inference_services/OpenAIService.py,sha256=_ikUPzyG3oe57NKfcCC7W20Ktis4kK1FWZ01zBbPa28,7719
|
67
|
-
edsl/inference_services/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
68
|
-
edsl/inference_services/models_available_cache.py,sha256=aTJAYKjntQtb95jwmEB_QXjvwclydqZIqRhrkBw9CAM,3483
|
69
|
-
edsl/inference_services/rate_limits_cache.py,sha256=HYslviz7mxF9U4CUTPAkoyBsiXjSju-YCp4HHir6e34,1398
|
70
|
-
edsl/inference_services/registry.py,sha256=9bPIn6EJsStsNN_3bzkBDVoOLgwAtmUKle18mZskFJs,865
|
71
|
-
edsl/inference_services/write_available.py,sha256=NNwhATlaMp8IYY635MSx-oYxt5X15acjAfaqYCo_I1Y,285
|
72
|
-
edsl/jobs/Answers.py,sha256=z4TADN-iHIrbMtI1jVyiaetv0OkTv768dFBpREIQC6c,1799
|
73
|
-
edsl/jobs/Jobs.py,sha256=jnfMbz4VHdDJifGmn3wxEm1_NvYGT6L7LlD41pT9Rsk,33282
|
74
|
-
edsl/jobs/__init__.py,sha256=aKuAyd_GoalGj-k7djOoVwEbFUE2XLPlikXaA1_8yAg,32
|
75
|
-
edsl/jobs/buckets/BucketCollection.py,sha256=LA8DBVwMdeTFCbSDI0S2cDzfi_Qo6kRizwrG64tE8S4,1844
|
76
|
-
edsl/jobs/buckets/ModelBuckets.py,sha256=hxw_tzc0V42CiB7mh5jIxlgwDVJ-zFZhlLtKrHEg8ho,2419
|
77
|
-
edsl/jobs/buckets/TokenBucket.py,sha256=A4ZHDztlswRXlsdOmtAoyy9gBj3Y5rgOeKsy_U62sp4,6320
|
78
|
-
edsl/jobs/interviews/Interview.py,sha256=6CeWoHvhDqIbhBCrNubDvinBSa7K-Rks5ilGmJNFMg4,12028
|
79
|
-
edsl/jobs/interviews/InterviewExceptionEntry.py,sha256=N_-3_KwXTZLhGNwZSyTgUMS0lE-hikWRy2AzLOduTDQ,2772
|
80
|
-
edsl/jobs/interviews/InterviewStatistic.py,sha256=hY5d2EkIJ96NilPpZAvZZzZoxLXM7ss3xx5MIcKtTPs,1856
|
81
|
-
edsl/jobs/interviews/InterviewStatisticsCollection.py,sha256=_ZZ0fnZBQiIywP9Q_wWjpWhlfcPe2cn32GKut10t5RI,788
|
82
|
-
edsl/jobs/interviews/InterviewStatusDictionary.py,sha256=MSyys4hOWe1d8gfsUvAPbcKrs8YiPnz8jpufBSJL7SU,2485
|
83
|
-
edsl/jobs/interviews/InterviewStatusLog.py,sha256=6u0F8gf5tha39VQL-IK_QPkCsQAYVOx_IesX7TDDX_A,3252
|
84
|
-
edsl/jobs/interviews/InterviewStatusMixin.py,sha256=VV0Pel-crUsLoGpTifeIIkXsLGj0bfuO--UtpRnH-dU,1251
|
85
|
-
edsl/jobs/interviews/InterviewTaskBuildingMixin.py,sha256=O1XwX6QqhQ-M-b4fqy0XzopLna2A8BTrdjKcz3N0XHs,11505
|
86
|
-
edsl/jobs/interviews/ReportErrors.py,sha256=RSzDU2rWwtjfztj7sqaMab0quCiY-X2bG3AEOxhTim8,1745
|
87
|
-
edsl/jobs/interviews/interview_exception_tracking.py,sha256=GF5PIj601rZPa5XWx1vTbFRt662S0CEoHYpG4Wulxj8,5066
|
88
|
-
edsl/jobs/interviews/interview_status_enum.py,sha256=KJ-1yLAHdX-p8TiFnM0M3v1tnBwkq4aMCuBX6-ytrI8,229
|
89
|
-
edsl/jobs/interviews/retry_management.py,sha256=9Efn4B3aV45vbocnF6J5WQt88i2FgFjoi5ALzGUukEE,1375
|
90
|
-
edsl/jobs/runners/JobsRunnerAsyncio.py,sha256=U6_tJyTIxZmHNtJw7Gn4cpAU8Pzvfq3n9s39fVjsGkc,12802
|
91
|
-
edsl/jobs/runners/JobsRunnerStatusData.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
92
|
-
edsl/jobs/runners/JobsRunnerStatusMixin.py,sha256=MmVK2udusAbQ3KCkQPiQYjWVDfKprBk9Ecelgui__0k,13424
|
93
|
-
edsl/jobs/tasks/QuestionTaskCreator.py,sha256=f-hF7TMdMMjQ5AQMpMJXrFdBUNSLrLHHl1sun774f_U,10394
|
94
|
-
edsl/jobs/tasks/TaskCreators.py,sha256=XqAbNU33378Z4PQncokbfJwnKt3KHR9aqa5fKYRDpfg,2694
|
95
|
-
edsl/jobs/tasks/TaskHistory.py,sha256=PV1G1VdaZNV3GQ_m1L4a_7uPmrEGZw4K-hn8gJe_aDE,16220
|
96
|
-
edsl/jobs/tasks/TaskStatusLog.py,sha256=bqH36a32F12fjX-M-4lNOhHaK2-WLFzKE-r0PxZPRjI,546
|
97
|
-
edsl/jobs/tasks/task_management.py,sha256=KMToZuXzMlnHRHUF_VHL0-lHMTGhklf2GHVuwEEHtzA,301
|
98
|
-
edsl/jobs/tasks/task_status_enum.py,sha256=DOyrz61YlIS8R1W7izJNphcLrJ7I_ReUlfdRmk23h0Q,5333
|
99
|
-
edsl/jobs/tokens/InterviewTokenUsage.py,sha256=u_6-IHpGFwZ6qMEXr24-jyLVUSSp4dSs_4iAZsBv7O4,1100
|
100
|
-
edsl/jobs/tokens/TokenUsage.py,sha256=odj2-wDNEbHl9noyFAQ0DSKV0D9cv3aDOpmXufKZ8O4,1323
|
101
|
-
edsl/language_models/LanguageModel.py,sha256=klXlrI3Xty7EpT3MB1OUzbue38zRkvzA0vrZOLuQLmo,21569
|
102
|
-
edsl/language_models/ModelList.py,sha256=G8tzHqzz4exc28BGvGgVRk1Xwu8EDCiVWxMC5l8VnvI,2862
|
103
|
-
edsl/language_models/RegisterLanguageModelsMeta.py,sha256=2bvWrVau2BRo-Bb1aO-QATH8xxuW_tF7NmqBMGDOfSg,8191
|
104
|
-
edsl/language_models/__init__.py,sha256=bvY7Gy6VkX1gSbNkRbGPS-M1kUnb0EohL0FSagaEaTs,109
|
105
|
-
edsl/language_models/registry.py,sha256=h5eLN7lsqpK5vcEsxn3gsARb9Qyx-k3jq2MMnyuATcY,3727
|
106
|
-
edsl/language_models/repair.py,sha256=xaNunBRpMWgceSPOzk-ugp5WXtgLuuhj23TgXUeOobw,5963
|
107
|
-
edsl/language_models/unused/ReplicateBase.py,sha256=J1oqf7mEyyKhRwNUomnptVqAsVFYCbS3iTW0EXpKtXo,3331
|
108
|
-
edsl/notebooks/Notebook.py,sha256=xi9xkxmkQ6-DwhqbjjMLpYKB0VJV20AtwEonJ6mnqjo,7739
|
109
|
-
edsl/notebooks/__init__.py,sha256=VNUA3nNq04slWNbYaNrzOhQJu3AZANpvBniyCJSzJ7U,45
|
110
|
-
edsl/prompts/Prompt.py,sha256=12cbeQTKqfVQGpd1urqKZeXiDtKz2RAJqftoXS3q-DE,10070
|
111
|
-
edsl/prompts/QuestionInstructionsBase.py,sha256=xico6ob4cqWsHl-txj2RbY_4Ny5u9UqvIjmoTVgjUhk,348
|
112
|
-
edsl/prompts/__init__.py,sha256=Z0ywyJfnV0i-sR1SCdK4mHhgECT5cXpHVA-pKuBTifc,85
|
113
|
-
edsl/prompts/library/agent_instructions.py,sha256=_2kCDYvh3ZOF72VvcIH5jhmHjM6AAgQdkWrHvR52Yhg,1100
|
114
|
-
edsl/prompts/library/agent_persona.py,sha256=jEl1LjlOP67vOPiRW0S_-TRMz3n6Tp3mPRvltM2r2_k,516
|
115
|
-
edsl/prompts/library/question_budget.py,sha256=RAc7pmQRbs_-xksU52yYl8iqJ7HejPY4sQOlCSQLGWs,1190
|
116
|
-
edsl/prompts/library/question_checkbox.py,sha256=NIGcdnfkJ8_XbGsdq9toeWA_phQVx5FIBOAe0mReXJw,1462
|
117
|
-
edsl/prompts/library/question_extract.py,sha256=QxNiNBjUk25Ss_Pax0iDgmgTYXEycpWJk2z0evmqsP0,775
|
118
|
-
edsl/prompts/library/question_freetext.py,sha256=_I7hcniRfVwmZr2wXAasfbZ0GTu41ZIKfcoixGhzZUI,510
|
119
|
-
edsl/prompts/library/question_linear_scale.py,sha256=sQpgjSvqJU-uQti-DCxOzLzj05ENkpyxmH-qTFq39x0,778
|
120
|
-
edsl/prompts/library/question_list.py,sha256=KYi3gtcWyDzRLyAb2-k7C-QJ9TAfbLGPkWVvVmdT6xg,731
|
121
|
-
edsl/prompts/library/question_multiple_choice.py,sha256=_2LUM9bOInODoFyaTrKfMkcb5Z7RDj_odq5iAnD7KVQ,1617
|
122
|
-
edsl/prompts/library/question_numerical.py,sha256=ZdWnDbTU0gQdMMqcWHw_eIHEZkJ_kuE-XWrnCYFR07w,1456
|
123
|
-
edsl/prompts/library/question_rank.py,sha256=WDgXyph0EKWJrSgsW2eqcx3xdU-WA1LEvB2jvQFOQ8s,882
|
124
|
-
edsl/prompts/prompt_config.py,sha256=O3Y5EvBsCeKs9m9IjXiRXOcHWlWvQV0yqsNb2oSR1ow,974
|
125
|
-
edsl/prompts/registry.py,sha256=XOsqGsvNOmIG83jqoszqI72yNZkkszKR4FrEhwSzj_Q,8093
|
126
|
-
edsl/questions/AnswerValidatorMixin.py,sha256=U5i79HoEHpSoevgtx68TSg8a9tELq3R8xMtYyK1L7DQ,12106
|
127
|
-
edsl/questions/QuestionBase.py,sha256=XVB_G6ksX-rYq_mJlWlNHqaD68cJrG7iFymo7rWKGaU,19066
|
128
|
-
edsl/questions/QuestionBudget.py,sha256=aaRvSxBDzrQS8o4RBGsALZkSnKqGVJcHkDeEPAS2pd0,5974
|
129
|
-
edsl/questions/QuestionCheckBox.py,sha256=d-79SmqZgfPEHCMCzIdjDQJ2JSKJbFxEez05iguY3Ro,5958
|
130
|
-
edsl/questions/QuestionExtract.py,sha256=QxVGhgJHtxaPCOS0yqPdO4lsF5SIjjrIBlaiGXA0KjE,3818
|
131
|
-
edsl/questions/QuestionFreeText.py,sha256=b4V2lbj6L9AeIOMNlqrrUtZbuhxuUkbMum3NXaBOPZU,3004
|
132
|
-
edsl/questions/QuestionFunctional.py,sha256=jlC1eNE-kpp9o5CXKo-c3Re4PIq1_WmdJ66u9nD-W7w,4967
|
133
|
-
edsl/questions/QuestionList.py,sha256=jEOEnhlAz1rNc9uHzx8kTO5EkpSU3SDWcXtvoEmLIj8,3884
|
134
|
-
edsl/questions/QuestionMultipleChoice.py,sha256=7Lmy2gQ4ejeFenNQcaVXjE_TVyNAs3nizvn0zIS_d38,6455
|
135
|
-
edsl/questions/QuestionNumerical.py,sha256=dQkobQTXkmMUY4f-lSVAiTS33009cDy5qFCM1gJeCbs,3459
|
136
|
-
edsl/questions/QuestionRank.py,sha256=d_r9KE0v3PQs00ujIaloZZIb1FdcN6Wuak1og_0yNEQ,5709
|
137
|
-
edsl/questions/RegisterQuestionsMeta.py,sha256=unON0CKpW-mveyhg9V3_BF_GYYwytMYP9h2ZZPetVNM,1994
|
138
|
-
edsl/questions/SimpleAskMixin.py,sha256=YRLiHA6TPMKyLWvdAi7Mfnxcqtw7Kem6tH28YNb8n4U,2227
|
139
|
-
edsl/questions/__init__.py,sha256=U7t2dk_dHSaFRciHETXaGaJRnCobaik3mIKCpGRUuJo,1160
|
140
|
-
edsl/questions/compose_questions.py,sha256=ZcLkwNaofk-o0-skGXEDGZAj6DumOhVhyIUjqEnKrbg,3380
|
141
|
-
edsl/questions/derived/QuestionLikertFive.py,sha256=zKkjKI3HSt9ZGyBBNgXNsfXZ7gOoOknidLDPgMN_PcI,2475
|
142
|
-
edsl/questions/derived/QuestionLinearScale.py,sha256=7tybIaMaDTMkTFC6CymusW69so-zf5jUn8Aqf5pw__Y,2673
|
143
|
-
edsl/questions/derived/QuestionTopK.py,sha256=TouXKZt_h6Jd-2rAjkEOCJOzzei4Wa-3hjYq9CLxWws,2744
|
144
|
-
edsl/questions/derived/QuestionYesNo.py,sha256=KtMGuAPYWv-7-9WGa0fIS2UBxf6KKjFpuTk_h8FPZbg,2076
|
145
|
-
edsl/questions/derived/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
146
|
-
edsl/questions/descriptors.py,sha256=W0_mGZKKiXv2E2BKIy8-4n_QDILh9sun85Oev1YRoLs,14791
|
147
|
-
edsl/questions/question_registry.py,sha256=ZD7Y_towDdlnnmLq12vVewgQ3fEk9Ur0tCTWK8-WqeQ,5241
|
148
|
-
edsl/questions/settings.py,sha256=er_z0ZW_dgmC5CHLWkaqBJiuWgAYzIund85M5YZFQAI,291
|
149
|
-
edsl/results/Dataset.py,sha256=DZgb3vIj69ON7APQ6DimjBwAS1xZvZiXOg68CjW9E3I,8662
|
150
|
-
edsl/results/DatasetExportMixin.py,sha256=6Ky0CPxOOj6Og5nMMBQ-bhgJuzC6Ch_vHIquBbc_IdQ,25981
|
151
|
-
edsl/results/Result.py,sha256=53lz1mGqmnt2wHl-Ccimbla7cNlg_mLUgOBQa6Qd19k,14433
|
152
|
-
edsl/results/Results.py,sha256=IUHfmcBVtZ3me4VvVBQsdKKtuMXaZtLkzIrH5US7aUY,38155
|
153
|
-
edsl/results/ResultsDBMixin.py,sha256=Vs95zbSB4G7ENY4lU7OBdekg9evwTrtPH0IIL2NAFTk,7936
|
154
|
-
edsl/results/ResultsExportMixin.py,sha256=XizBsPNxziyffirMA4kS7UHpYM1WIE4s1K-B7TqTfDw,1266
|
155
|
-
edsl/results/ResultsFetchMixin.py,sha256=VEa0TKDcXbnTinSKs9YaE4WjOSLmlp9Po1_9kklFvSo,848
|
156
|
-
edsl/results/ResultsGGMixin.py,sha256=SAYz8p4wb1g8x6KhBVz9NHOGib2c2XsqtTclpADrFeM,4344
|
157
|
-
edsl/results/ResultsToolsMixin.py,sha256=mseEFxJCf9sjXdIxpjITt_UZBwdXxw2o2VLg5jMrALA,3017
|
158
|
-
edsl/results/__init__.py,sha256=2YcyiVtXi-3vIV0ZzOy1PqBLm2gaziufJVi4fdNrAt8,80
|
159
|
-
edsl/scenarios/FileStore.py,sha256=AevvU1qdLSmL4Q7cb1PhUiaJk1i5T0sgkTKBYf0KDN4,8722
|
160
|
-
edsl/scenarios/Scenario.py,sha256=VpQzY3169Z18ZoNOu_pjIf66TXngIVFZHvQXUJeRdQg,15254
|
161
|
-
edsl/scenarios/ScenarioHtmlMixin.py,sha256=EmugmbPJYW5eZS30rM6pDMDQD9yrrvHjmgZWB1qBfq4,1882
|
162
|
-
edsl/scenarios/ScenarioImageMixin.py,sha256=VJ5FqyPrL5-ieORlWMpnjmOAFIau8QFZCIZyEBKgb6I,3530
|
163
|
-
edsl/scenarios/ScenarioList.py,sha256=Atqjcrvhgvw0r25AimK2HEsuv7kCRjutZQwIb2DQkwI,27214
|
164
|
-
edsl/scenarios/ScenarioListExportMixin.py,sha256=nuBrSlkNogfVZzIV2vJai216ebWH3iJxiLJAJ_n0xg8,1410
|
165
|
-
edsl/scenarios/ScenarioListPdfMixin.py,sha256=dt7GzC2UZZpQjjilS7_eBm0BmqU6bDWWbBP7ejkhgHM,3830
|
166
|
-
edsl/scenarios/__init__.py,sha256=KRwZCLf2R0qyJvv1NGbd8M51Bt6Ia6Iylg-Xq_2Fa6M,98
|
167
|
-
edsl/shared.py,sha256=lgLa-mCk2flIhxXarXLtfXZjXG_6XHhC2A3O8yRTjXc,20
|
168
|
-
edsl/study/ObjectEntry.py,sha256=e3xRPH8wCN8Pum5HZsQRYgnSoauSvjXunIEH79wu5A8,5788
|
169
|
-
edsl/study/ProofOfWork.py,sha256=FaqYtLgeiTEQXWKukPgPUTWMcIN5t1FR7h7Re8QEtgc,3433
|
170
|
-
edsl/study/SnapShot.py,sha256=-5zoP4uTvnqtu3zRNMD-fKsNAVYX9psoKRADfotsF9E,2439
|
171
|
-
edsl/study/Study.py,sha256=zLy2mMvsX_QgZ6D4dcgYJoEacyajkRnARYjIFvyCO1o,16939
|
172
|
-
edsl/study/__init__.py,sha256=YAvPLTPG3hK_eN9Ar3d1_d-E3laXpSya879A25-JAxU,170
|
173
|
-
edsl/surveys/DAG.py,sha256=ozQuHo9ZQ8Eet5nDXtp7rFpiSocvvfxIHtyTnztvodg,2380
|
174
|
-
edsl/surveys/Memory.py,sha256=-ikOtkkQldGB_BkPCW3o7AYwV5B_pIwlREw7aVCSHaQ,1113
|
175
|
-
edsl/surveys/MemoryPlan.py,sha256=BeLuqS5Q8G2jSluHYFCAxVmj7cNPK-rDQ3mUsuDjikQ,7979
|
176
|
-
edsl/surveys/Rule.py,sha256=FnTCEWlbHDH_wOmnN1fiuqwrJzEEhPG4jibLXhRq03M,11104
|
177
|
-
edsl/surveys/RuleCollection.py,sha256=sN7aYDQJG3HmE-WxohgpctcQbHewjwE6NAqEVTxvFP8,13359
|
178
|
-
edsl/surveys/Survey.py,sha256=USU3cxJtflOAmDyxAljUUd45vU3j9XWtgSsBTZYkCaY,51355
|
179
|
-
edsl/surveys/SurveyCSS.py,sha256=NjJezs2sTlgFprN6IukjGKwNYmNdXnLjzV2w5K4z4RI,8415
|
180
|
-
edsl/surveys/SurveyExportMixin.py,sha256=vj9bZReHx0wBK9sVuS0alzPIUDdg6AFFMd7bl1RKWKI,6555
|
181
|
-
edsl/surveys/SurveyFlowVisualizationMixin.py,sha256=Z-YqeedMqWOtCFy003YJ9aneJ1n4bn70lDoILwLtTc0,3966
|
182
|
-
edsl/surveys/SurveyQualtricsImport.py,sha256=GG8usoPtG2_Ef-aIpwIEfCzOsjCFZHE6mtvof0cb7Z0,7238
|
183
|
-
edsl/surveys/__init__.py,sha256=vjMYVlP95fHVqqw2FfKXRuYbTArZkZr1nK4FnXzZWzs,129
|
184
|
-
edsl/surveys/base.py,sha256=n5PBx0BF0powzBXCsufpUekfNK_9huf3rohtU1mMCq0,1001
|
185
|
-
edsl/surveys/descriptors.py,sha256=3B-hBVvGpLlVBCyOnPuxkLjesvpr0QIuATbggp_MJ7o,2076
|
186
|
-
edsl/tools/__init__.py,sha256=4iRiX1K0Yh8RGwlUBuzipvFfRrofKqCRQ0SzNK_2oiQ,41
|
187
|
-
edsl/tools/clusters.py,sha256=uvDN76bfHIHS-ykB2iioXu0gKeP_UyD7Q9ee67w_fV4,6132
|
188
|
-
edsl/tools/embeddings.py,sha256=-mHqApiFbGzj_2Cr_VVl_7XiBBDyPB5-6ZO7IsXvaig,677
|
189
|
-
edsl/tools/embeddings_plotting.py,sha256=fznAqLnjF_K8PkJy1C4hBRObm3f8ebDIxQzrqRXlEJM,3564
|
190
|
-
edsl/tools/plotting.py,sha256=DbVNlm8rNCnWHXi5wDPnOviZ1Qxz-rHvtQM1zHWw1f8,3120
|
191
|
-
edsl/tools/summarize.py,sha256=YcdB0IjZn92qv2zVJuxsHfXou810APWYKeaHknsATqM,656
|
192
|
-
edsl/utilities/SystemInfo.py,sha256=qTP_aKwECPxtTnbEjJ7F1QqKU9U3rcEEbppg2ilQGuY,792
|
193
|
-
edsl/utilities/__init__.py,sha256=oUWx_h-8OFb1Of2SgIQZuIu7hX_bhDuwCSwksKGWZ6k,544
|
194
|
-
edsl/utilities/ast_utilities.py,sha256=49KDDu-PHYpzDN5cCaDf-ReQH-1dzjT5EG3WVSa8THk,868
|
195
|
-
edsl/utilities/data/Registry.py,sha256=q2DKc7CpG_7l47MxxsSi6DJOs4p1Z3qNx7PV-v8CUOE,176
|
196
|
-
edsl/utilities/data/__init__.py,sha256=pDjGnzC11q4Za8qX5zcg6plcQ_8Qjpb-sAKPwOlKmCY,62
|
197
|
-
edsl/utilities/data/scooter_results.json,sha256=tRtVAI5haLMh_-wjz9it_uk_I1bGe5qdFHsIRQMi_ks,250944
|
198
|
-
edsl/utilities/decorators.py,sha256=rlTSMItwmWUxHQBIEUDxX3lFzgtiT8PnfNavakuf-2M,2319
|
199
|
-
edsl/utilities/gcp_bucket/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
200
|
-
edsl/utilities/gcp_bucket/cloud_storage.py,sha256=dStHsG181YP9ALW-bkyO-sgMWuLV5aaLsnsCOVD8jJw,3472
|
201
|
-
edsl/utilities/gcp_bucket/simple_example.py,sha256=pR_IH_Y640_-YnEyNpE7V_1MtBFC9nD3dg2NdSVcuXY,251
|
202
|
-
edsl/utilities/interface.py,sha256=AaKpWiwWBwP2swNXmnFlIf3ZFsjfsR5bjXQAW47tD-8,19656
|
203
|
-
edsl/utilities/repair_functions.py,sha256=tftmklAqam6LOQQu_-9U44N-llycffhW8LfO63vBmNw,929
|
204
|
-
edsl/utilities/restricted_python.py,sha256=5-_zUhrNbos7pLhDl9nr8d24auRlquR6w-vKkmNjPiA,2060
|
205
|
-
edsl/utilities/utilities.py,sha256=2KwKc1J0lu6_CjIAKaufvfLOJ4j3XGKyClwJ6TjKLxM,11157
|
206
|
-
edsl-0.1.33.dev1.dist-info/LICENSE,sha256=_qszBDs8KHShVYcYzdMz3HNMtH-fKN_p5zjoVAVumFc,1111
|
207
|
-
edsl-0.1.33.dev1.dist-info/METADATA,sha256=7-OQHBeU2oBSZ54VSVS8JDM3n4iMWSO0eoE5s_Ajq2s,4306
|
208
|
-
edsl-0.1.33.dev1.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
209
|
-
edsl-0.1.33.dev1.dist-info/RECORD,,
|
File without changes
|
File without changes
|