# TiKZ-Diagramm zeichnen

import { Tabs, Tab } from 'nextra/components';

## Hintergrund

Dieser Prompt testet die Fähigkeit eines LLM zur Codegenerierung, indem er dazu aufgefordert wird, ein Einhorn in TiKZ zu zeichnen. Im untenstehenden Beispiel wird erwartet, dass das Modell den LaTeX-Code generiert, der dann verwendet werden kann, um das Einhorn oder welches Objekt auch immer übergeben wurde, zu erzeugen.

## Prompt

```
Zeichne ein Einhorn in TiKZ
```

## Code / API

<Tabs items={['GPT-4 (OpenAI)', 'Mixtral MoE 8x7B Instruct (Fireworks)']}>
    <Tab>
        ```python
        from openai import OpenAI
        client = OpenAI()

        response = client.chat.completions.create(
            model="gpt-4",
            messages=[
                {
                "role": "user",
                "content": "Draw a unicorn in TiKZ"
                }
            ],
            temperature=1,
            max_tokens=1000,
            top_p=1,
            frequency_penalty=0,
            presence_penalty=0
        )
        ```
    </Tab>

    <Tab>
        ```python
        import fireworks.client
        fireworks.client.api_key = "<FIREWORKS_API_KEY>"
        completion = fireworks.client.ChatCompletion.create(
            model="accounts/fireworks/models/mixtral-8x7b-instruct",
            messages=[
                {
                "role": "user",
                "content": "Draw a unicorn in TiKZ",
                }
            ],
            stop=["<|im_start|>","<|im_end|>","<|endoftext|>"],
            stream=True,
            n=1,
            top_p=1,
            top_k=40,
            presence_penalty=0,
            frequency_penalty=0,
            prompt_truncate_len=1024,
            context_length_exceeded_behavior="truncate",
            temperature=0.9,
            max_tokens=4000
        )
        ```
    </Tab>

</Tabs>

## Referenz

- [Sparks of Artificial General Intelligence: Early experiments with GPT-4](https://arxiv.org/abs/2303.12712) (13. April 2023)
