# EDSL Documentation - [EDSL Documentation](https://docs.expectedparrot.com/en/latest/index.md): The open-source Python package for research with AI and human participants. - [EDSL Overview](https://docs.expectedparrot.com/en/latest/overview.md): Understand how to structure a study, run it with AI or human participants, and work with the resulting data. - [Installation](https://docs.expectedparrot.com/en/latest/installation.md): Install EDSL in a Python environment and verify the installation. - [Run your first survey](https://docs.expectedparrot.com/en/latest/starter_tutorial.md): Construct and run a small EDSL survey, inspect its responses, and extend it to AI or human studies. - [Model access and API keys](https://docs.expectedparrot.com/en/latest/api_keys.md): Choose hosted execution or direct provider access, and configure credentials. - [EDSL CLI Guide](https://docs.expectedparrot.com/en/latest/cli.md): Create surveys, run jobs, collect human responses, and inspect saved data from the command line, scripts, or coding agents. - [Google Colab setup](https://docs.expectedparrot.com/en/latest/colab_setup.md): Install EDSL and load credentials in a Colab notebook. - [Questions](https://docs.expectedparrot.com/en/latest/questions.md): Choose a response format, construct a question, and validate its inputs. - [Surveys](https://docs.expectedparrot.com/en/latest/surveys.md): Assemble questions, control survey flow, and prepare surveys for AI or human respondents. - [Scenarios](https://docs.expectedparrot.com/en/latest/scenarios.md): Use text, tables, PDFs, images, video, and audio as inputs to EDSL questions. - [Agents](https://docs.expectedparrot.com/en/latest/agents.md): Define and vary simulated respondent traits and instructions. - [Language Models](https://docs.expectedparrot.com/en/latest/language_models.md): Discover model availability, configure providers, and compare model outputs. - [Jobs](https://docs.expectedparrot.com/en/latest/jobs.md): Combine study components, inspect the planned run, and execute it. - [Prompts and instructions](https://docs.expectedparrot.com/en/latest/prompts.md): Inspect rendered prompts and trace substitutions, instructions, and memory. - [Results](https://docs.expectedparrot.com/en/latest/results.md): Turn responses and study metadata into analysis-ready tables. - [Dataset](https://docs.expectedparrot.com/en/latest/dataset.md): Work with selected columns as tabular data and export them for analysis. - [FileStore](https://docs.expectedparrot.com/en/latest/filestore.md): Represent files as EDSL inputs and distinguish file attachments from tabular rows. - [Survey messages](https://docs.expectedparrot.com/en/latest/survey_messages.md): Use SurveyMessage to add display-only, routable pages such as introductions, consent text, transitions, eligibility notices, and completion messages to an EDSL Survey. - [Discovering types and services](https://docs.expectedparrot.com/en/latest/enums.md): Inspect supported question types and inference services in the installed version. - [Survey logic and piping](https://docs.expectedparrot.com/en/latest/guides/survey_logic.md): Build surveys that choose relevant questions and use earlier answers in follow-ups. - [Importing data](https://docs.expectedparrot.com/en/latest/guides/importing_data.md): Import tables, documents, and web content into scenarios and respondent profiles. - [Experimental conditions](https://docs.expectedparrot.com/en/latest/guides/experimental_conditions.md): Compare messages across respondent profiles and understand which combinations EDSL runs. - [Comparing models](https://docs.expectedparrot.com/en/latest/guides/model_comparisons.md): Apply selected models to matched inputs and inspect disagreement. - [Label data with survey questions](https://docs.expectedparrot.com/en/latest/guides/data_labeling.md): Generate labels from an existing codebook, or develop the labels through exploratory questions first. - [Pretesting survey instruments](https://docs.expectedparrot.com/en/latest/research/pretesting.md): Compare item wording and inspect the issues models identify. - [Prompt sensitivity](https://docs.expectedparrot.com/en/latest/research/prompt_sensitivity.md): Measure how instruction choices change responses to matched inputs. - [Model behavior across contexts](https://docs.expectedparrot.com/en/latest/research/model_behavior.md): Vary context while holding the decision and response format constant. - [Qualitative coding with a codebook](https://docs.expectedparrot.com/en/latest/research/qualitative.md): Apply themes across documents and retain evidence quotations. - [Validating classifications with humans](https://docs.expectedparrot.com/en/latest/research/human_validation.md): Collect independent labels and compare them with model predictions. - [Human studies](https://docs.expectedparrot.com/en/latest/guides/human_studies.md): Publish a survey, collect responses, and retrieve data for analysis. - [Human surveys](https://docs.expectedparrot.com/en/latest/humanize.md): EDSL comes with built-in methods for generating web versions of your surveys and collecting and analyzing responses from humans. - [AI-led interviews with people](https://docs.expectedparrot.com/en/latest/guides/human_interviews.md): Personalize AI interview guides and combine conversations with structured survey questions. - [Prolific recruitment](https://docs.expectedparrot.com/en/latest/prolific.md): Prepare a human survey, create a recruitment draft, and check it before launch. - [Grouped surveys](https://docs.expectedparrot.com/en/latest/humanize_groups.md): Define question groups and request one group per page in a human survey. - [Humanize schema](https://docs.expectedparrot.com/en/latest/humanize_schema.md): Reference for the humanize schema: a dict that configures how survey questions are presented in web surveys with human respondents. - [Survey notifications](https://docs.expectedparrot.com/en/latest/humanize_notifications.md): Send emails, schedule deliveries, and react to respondent events for human surveys. - [AI agent access](https://docs.expectedparrot.com/en/latest/humanize_agent_access.md): Let AI agents take a human survey through an agent link, and control who answers and what guidance they get. - [Custom CSS](https://docs.expectedparrot.com/en/latest/custom_css.md): CSS classes and HTML structure for styling human-facing surveys with custom CSS. - [Custom JavaScript](https://docs.expectedparrot.com/en/latest/custom_javascript.md): Run your own JavaScript on a human survey's questions, and record what respondents do. - [Provider and model configuration](https://docs.expectedparrot.com/en/latest/guides/providers.md): Discover current services and configure model-specific parameters. - [Remote execution](https://docs.expectedparrot.com/en/latest/remote_inference.md): Run a saved study on Expected Parrot and retrieve its results. - [Background jobs](https://docs.expectedparrot.com/en/latest/guides/background_jobs.md): Submit remote jobs, find runs, and retrieve results with Python or the CLI. - [Local caching](https://docs.expectedparrot.com/en/latest/cache.md): Reuse model responses locally and preserve the cache alongside a study. - [Remote caching](https://docs.expectedparrot.com/en/latest/remote_caching.md): Understand hosted response reuse and when to request new draws. - [Estimating and inspecting costs](https://docs.expectedparrot.com/en/latest/costs.md): Estimate a job in USD and credits, inspect its cost breakdown, and review completed results. - [Expected Parrot credits](https://docs.expectedparrot.com/en/latest/credits.md): Check usage credits for hosted model execution and platform services. - [Token limits and rate limits](https://docs.expectedparrot.com/en/latest/token_usage.md): Separate request size, throughput, and usage costs when configuring model runs. - [Saving and sharing objects](https://docs.expectedparrot.com/en/latest/guides/saving_objects.md): Save, reopen, and share EDSL objects. - [Expected Parrot objects](https://docs.expectedparrot.com/en/latest/coop.md): Store, retrieve, update, and share EDSL objects through the Expected Parrot platform. - [Versioning Surveys with .ep Files](https://docs.expectedparrot.com/en/latest/survey_ep_format.md): A hands-on tour of the Git-backed .ep format for EDSL Surveys: package contents, commits, diffs, history, and efficient collaboration. - [Notebooks and scripts](https://docs.expectedparrot.com/en/latest/notebooks.md): Share a notebook or script as supporting material for a study. - [Sharing a Colab notebook](https://docs.expectedparrot.com/en/latest/colab_notebooks.md): Save a Colab notebook as supporting material for a study. - [Shared object methods](https://docs.expectedparrot.com/en/latest/base.md): Understand common serialization and persistence methods on EDSL objects. - [Research with Expected Parrot](https://docs.expectedparrot.com/en/latest/papers.md): A selection of research papers using or citing Expected Parrot and EDSL. - [Citation](https://docs.expectedparrot.com/en/latest/citation.md): If you use the EDSL package in your research or projects, please use the following citation: - [Teaching guide](https://docs.expectedparrot.com/en/latest/teaching.md): Teach study design, simulations, human research, and reproducible analysis with EDSL. - [Research Agent](https://docs.expectedparrot.com/en/latest/research_agent.md): Design, run, analyze, and share research through conversation, with access to study files and deliverables. - [Builder](https://docs.expectedparrot.com/en/latest/survey_builder.md): Create, import, and edit surveys and interview guides visually, using the same research objects as the Research Agent and EDSL. - [Contributing](https://docs.expectedparrot.com/en/latest/contributing.md): Report problems, suggest features, and share EDSL code or examples. ## Optional - [GitHub](https://github.com/expectedparrot/edsl) - [Blog](https://blog.expectedparrot.com) This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.