One of the core principles of software development is DRY (Don't Repeat
Yourself). This is a principle that apply to documentation as
well. If you find yourself repeating the same content in multiple places, you
should consider creating a custom snippet to keep your content in sync.

## Setting up

The first step to data processing with LLMs is setting up your editing environments.

<CardGroup cols={1}>
    <Card
        title="Install Instructor"
        icon="pen-to-square"
        href="/setup"
    >
        Setup your API keys in .env file to access LLM API provider
    </Card>
    <Card
        title="Run examples"
        icon="image"
        href="/examples/index"
    >
        Run examples to see how Instructor in action
    </Card>
</CardGroup>


## Using Instructor

Learn how to use Instructor to process your data with LLMs.

<CardGroup cols={2}>
    <Card
        title="Concepts"
        icon="palette"
        href="https://mintlify.com/docs/settings/global"
    >
        Understand basic concepts behind Instructor
    </Card>
    <Card
        title="Usage"
        icon="code"
        href="https://mintlify.com/docs/api-playground/openapi"
    >
        Learn how to use Instructor in your projects
    </Card>
    <Card
        title="Data model"
        icon="screwdriver-wrench"
        href="https://mintlify.com/docs/components/accordion"
    >
        Find out the ways to define response data models
    </Card>
    <Card
        title="Validation"
        icon="stars"
        href="https://mintlify.com/customers"
    >
        Use validation to automatically retry for incorrect LLM responses
    </Card>
</CardGroup>
