EDSL: AI-Powered Research

Expected Parrot Domain-Specific Language (EDSL) is an open-source Python package for conducting AI-powered research.

EDSL is developed by Expected Parrot and available under the MIT License.

This page provides documentation, tutorials and demo notebooks for the EDSL package and the Coop: a platform for creating, storing and sharing AI research. The contents are organized into key sections to help you get started:

Introduction

  • Overview: An overview of the purpose, concepts and goals of the EDSL package.

  • Whitepaper: A whitepaper about the EDSL package (in progress).

  • Citation: How to cite the package in your work.

Technical setup

  • Installation: Instructions for installing the EDSL package.

  • Create a Coop to create, store and share content on the Expected Parrot server.

  • API Keys: (Optional) Instructions for storing API keys for language models to use EDSL locally.

Getting Started

Core Concepts

  • Questions: Learn about different question types and applications.

  • Scenarios: Explore how questions can be dynamically parameterized for tasks like data labeling.

  • Surveys: Construct surveys and implement rules and conditions.

  • Agents: Design and implement AI agents to respond to surveys.

  • Language Models: Select language models to generate results.

  • Results: Access built-in methods for analyzing and utilizing survey results.

  • Caching LLM Calls: Learn about caching and sharing results.

  • Exceptions: Identify and handle exceptions in your survey design.

  • Token limits: Manage token limits for language models.

Coop

Coop is a platform for creating, storing and sharing EDSL content and AI research.

  • Coop: Learn how to create, store and share content at the Coop.

  • Remote Caching: Use remote caching to automatically store survey results and API calls on the Expected Parrot server.

  • Remote Inference: Use remote inference to run jobs on the Expected Parrot server.

  • Notebooks: Instructions for sharing .ipynb files with other users at the Coop.

Importing Data

  • Conjure: Automatically import other survey data into EDSL to:

    • Clean and analyze your data

    • Create AI agents for respondents and conduct follow-on interviews

    • Extend your results with new questions and surveys

    • Store and share your data on the Coop

How-to Guides

Examples of special methods and use cases for EDSL, including:

  • Data labeling, cleaning and analysis

  • Cognitive testing

  • Dynamic agent traits

  • Creating new methods

Notebooks

Templates and example code for using EDSL to conduct different kinds of research. We’re happy to create a new notebook for your use case!

Developers

Information about additional functionality for developers.