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:
Links
Download the latest version of EDSL on PyPI.
Get the latest EDSL updates on GitHub.
Create a Coop account.
Join our Discord channel to discuss AI research.
Follow us on social media:
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
Starter Tutorial: A tutorial to help you get started using EDSL.
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.
Working with Results
Results: Access built-in methods for analyzing and utilizing survey results as datasets.
Caching LLM Calls: Learn about caching and sharing results.
Exceptions & Debugging: 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.