Custom GPT – wirtualny asystent

Jakiś czas temu OpenAI udostępniło nową funkcję w ChatGPT – możliwość tworzenia własnych chatów GPT Dla wielu użytkowników oznacza to rewolucję w personalizacji sztucznej inteligencji. Ale czym właściwie są te niestandardowe modele? Jak działają i do czego można je wykorzystać?

🧠 Czym jest Custom GPT?

Custom GPT to spersonalizowana wersja na najnowszym powszechnym modelu (według zapewnień, bo tak naprawdę nie wiemy z jakiego modelu korzystamy), która działa w ramach aplikacji ChatGPT. Pozwala użytkownikowi dostosować:

  • Sposób komunikacji (styl, ton, język)
  • Zakres wiedzy i kontekst (np. wewnętrzne procedury firmy, specyfika danego projektu)
  • Działania i funkcje (np. wykonywanie API, generowanie danych, odpowiadanie zgodnie z dokumentacją techniczną)

To nie jest osobny model językowy, ale „konfiguracja” istniejącego modelu GPT, nad którą masz kontrolę.

🌍 Dostępne GPT tworzone przez społeczność

Nie musisz od razu tworzyć własnego modelu — OpenAI udostępnia ogromną bazę gotowych Custom GPTs, które stworzył zespół lub inni użytkownicy. Wystarczy wejść do zakładki „Odkryj modele GPT” w aplikacji ChatGPT i przeszukiwać dostępne narzędzia według kategorii.

Przykłady popularnych Custom GPT:

  • Guru GPT – integruje się z wewnętrzną bazą wiedzy firmy, umożliwiając szybkie wyszukiwanie informacji w dokumentach i aplikacjach takich jak Google Drive czy Confluence.
  • AI Grammar Checker – działa jak osobisty korektor językowy, poprawiając gramatykę i styl tekstów .
  • Excel Formula Generator – generuje formuły Excel na podstawie opisu zadania, przydatny dla analityków i pracowników biurowych .
  • Voice/Style/Tone AI Prompt Snippet Generator – analizuje Twój styl pisania i generuje prompt’y pasujące do Twojego tonu i stylu .
  • Video AI – pomaga w tworzeniu materiałów wideo, przydatny dla marketerów i twórców treści .
  • SEO GPT by Writesonic – wspiera optymalizację treści pod kątem SEO, analizując słowa kluczowe i strukturę tekstu .
  • Marketer GPT Pro – tworzy strategie marketingowe zgodne z brandingiem firmy, przydatny dla zespołów marketingowych .
  • Creative Writing Coach – działa jako wirtualny mentor pisarski, pomagając w rozwijaniu stylu i narracji .
  • Canva GPT – integruje się z platformą Canva, umożliwiając tworzenie projektów graficznych bezpośrednio z poziomu ChatGPT .

Większość z tych modeli działa od razu, bez żadnej konfiguracji. Możesz je testować, rozbudowywać, a nawet forknąć i zmodyfikować na własne potrzeby.

📚 Przykłady zastosowań

Custom GPTs znajdują zastosowanie w wielu dziedzinach:

  • Obsługa klienta: asystent odpowiadający zgodnie z wewnętrzną procedurą firmy (tzn. możemy mu wgrać np. procedury firmowe i wtedy prowadzić z nim konsultacje, bo samego modelu na zewnątrz nie pokażemy)
  • Programowanie: GPT znające konkretną bibliotekę, kod repozytorium lub konwencje zespołu
  • Tworzenie treści: autor newslettera, który zna Twój styl
  • Edukacja: nauczyciel specjalizujący się w jednym przedmiocie lub poziomie nauczania

🔧 Jak stworzyć własnego Custom GPT?

Tworzenie własnego modelu GPT odbywa się przez graficzny interfejs, który udostępnia OpenAI. Po kliknięciu Utwórz (w prawym górnym rogu po kliknięciu na Odkryj modele GPT) pojawia nam się panel w którym możemy dodać swój model

✍️ Instrukcje (serce modelu)

Tu opisujesz, kim ma być Twój GPT i jak ma się zachowywać.

Przykład:

Jesteś pomocnikiem osoby szukającej pracy w branży AI (np. Machine Learning Engineer, Prompt Engineer, AI Researcher, AI Product Manager).

Twoim zadaniem jest:

  • Pomagać użytkownikowi stworzyć CV dopasowane do ogłoszeń
  • Tworzyć treści na LinkedIn lub portfolio GitHub
  • Podpowiadać, jak odpowiadać na pytania rekrutacyjne (np. „Opowiedz o swoim projekcie z NLP”)
  • Analizować konkretne ogłoszenia o pracę (jeśli użytkownik je wklei)
  • Symulować rozmowy kwalifikacyjne (zadając pytania techniczne)

Zawsze pytaj użytkownika, na jaką konkretną rolę się przygotowuje, jakie ma doświadczenie i czego oczekuje.
Nie udawaj, że jesteś rekruterem – jesteś wsparciem, nie decydujesz o zatrudnieniu.

Wskazówka: pisz do GPT jak do człowieka, ale precyzyjnie – „jeśli X, to Y”, nie ogólnikowo.

🗂 Wiedza i pliki

Możesz dodać własne dokumenty, które GPT będzie mógł czytać (np. PDF, DOCX, TXT, CSV) np.

  • CV
  • Umiejętności
  • Notatki
  • Politykę firmy
  • FAQ
  • Opisy produktów
  • Słowniki firmowego języka
  • Własne prompty i instrukcji

Klikasz „Prześlij pliki

✅ Funkcje

Możesz włączyć dodatkowe możliwości modelu, które są zależne od tego co potrafi aktualnie model. Na dzień dzisiejszy to:

  • Wyszukiwanie w sieci – GPT będzie mógł sprawdzać aktualne informacje
  • Canva – integracja z grafiką
  • Generowanie obrazu 4o – nowa funkcja GPT-4o, pozwala na tworzenie obrazków
  • Interpreter kodu / analiza danych – tzw. „Code Interpreter”, czyli możliwość analizowania danych, tabel, generowania wykresów itd.

Zaznaczasz te, które chcesz

🔌 Działania (Actions) – rozszerzanie możliwości GPT przez API

Custom GPT może nie tylko rozmawiać, ale też wykonywać konkretne akcje w świecie zewnętrznym – np. publikować treści, pobierać dane, zarządzać plikami czy integrować się z innymi systemami. To możliwe dzięki funkcji Actions — działania zdefiniowane przez OpenAPI Schema.

🧠 Jak to działa?

GPT rozumie działania, które mu zdefiniujesz, jako interfejs API. Na tej podstawie może np.:

  • Utworzyć wpis w WordPressie
  • Pobierać dane z hurtowni lub sklepu
  • Utworzyć wpis w WordPressie
  • Wysłać dane do Google Sheets
  • Dodać lead do CRM
  • Wysłać e-mail

🧪 Testowanie i publikacja

Z prawej strony masz Podgląd, czyli możliwość przetestowania, jak Twój model się zachowuje.

  • Jeśli działa poprawnie – możesz go zapisać jako prywatny (domyślnie), albo opublikować publicznie.
  • Możesz też wrócić do edycji i dodawać kolejne funkcje.

💡Przykładowa akcja – publikacja artykułów na WordPress

Dla pokazania możliwości akcji dodajmy mu funkcję publikowania artykułów w WordPress

Na początek stwórzmy bardzo prostą wtyczkę publikującą artykuły jako szkic. Na początku zaznaczę, że to jest przykład i nie powinna być używana na Twojej produkcyjne stronie, bo nie zawiera pełnej ochrony przed atakami typu injection, XSS czy nieautoryzowanym dostępem.

W zmiennej token jest „twoj_super_tajny_token” – zmień go na coś innego jak chcesz sprawdzić.

<?php
/**
 * Plugin Name: External Post Creator
 * Description: Umożliwia tworzenie szkiców artykułów z zewnętrznego źródła (API), z miniaturką i meta.
 * Version: 1.0
 * Author: Eskim83
 */

add_action('rest_api_init', function () {
    register_rest_route('external-post/v1', '/create/', [
        'methods' => 'POST',
        'callback' => 'epc_create_post',
        'permission_callback' => 'epc_permission_check',
    ]);
});

function epc_permission_check($request) {
    $token = $request->get_header('x-api-token');
    return $token === 'twoj_super_tajny_token'; // Zmienna lub stała!
}

function epc_create_post($request) {
    $params = $request->get_json_params();

    $post_data = [
        'post_title'    => sanitize_text_field($params['title'] ?? 'Bez tytułu'),
        'post_content'  => wp_kses_post($params['content'] ?? ''),
        'post_status'   => 'draft',
        'post_author'   => 1,
        'post_type'     => 'post',
    ];

    $post_id = wp_insert_post($post_data);

    if (is_wp_error($post_id)) {
        return new WP_Error('create_failed', 'Nie udało się utworzyć wpisu', ['status' => 500]);
    }

    // Dodaj obrazek wyróżniający z URL
    if (!empty($params['thumbnail_url'])) {
        $thumb_id = epc_download_and_attach_image($params['thumbnail_url'], $post_id);
        if ($thumb_id) {
            set_post_thumbnail($post_id, $thumb_id);
        }
    }

    // Meta pola (np. ACF albo standardowe)
    if (!empty($params['meta']) && is_array($params['meta'])) {
        foreach ($params['meta'] as $key => $value) {
            update_post_meta($post_id, sanitize_key($key), sanitize_text_field($value));
        }
    }

    return ['success' => true, 'post_id' => $post_id];
}

function epc_download_and_attach_image($url, $post_id) {
    require_once ABSPATH . 'wp-admin/includes/image.php';
    require_once ABSPATH . 'wp-admin/includes/file.php';
    require_once ABSPATH . 'wp-admin/includes/media.php';

    $tmp = download_url($url);

    if (is_wp_error($tmp)) {
        return false;
    }

    $file_array = [
        'name'     => basename($url),
        'tmp_name' => $tmp,
    ];

    $id = media_handle_sideload($file_array, $post_id);

    if (is_wp_error($id)) {
        @unlink($tmp);
        return false;
    }

    return $id;
}

Wtyczkę oczywiście dodajemy do WordPressa i aktywujemy.

Przy tworzeniu modelu podajemy coś w ten deseń (zmień nazwę strony na swoją)

Jeśli użytkownik mówi, że chce opublikować lub utworzyć wpis na blogu, użyj akcji createPost, aby utworzyć szkic wpisu w moim WordPressie na stronie example.com. Ustaw title, content, thumbnail_url i meta, jeśli są podane.

Jeśli użytkownik powie „opublikuj”, możesz zapisać jako szkic i dodać informację, że to gotowe do publikacji.

Następnie pod spodem klikamy utwórz nowe działanie i dodajemy zapytanie do API WordPressa w formacie YAML

openapi: 3.1.0
info:
  title: WordPress Post Creator
  version: 1.0.0
servers:
  - url: https://example.com
paths:
  /wp-json/external-post/v1/create/:
    post:
      summary: Utwórz szkic wpisu w WordPress
      operationId: createPost
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostData'
      responses:
        '200':
          description: OK
      security:
        - api_key: []
components:
  securitySchemes:
    api_key:
      type: apiKey
      in: header
      name: x-api-token
  schemas:
    PostData:
      type: object
      properties:
        title:
          type: string
        content:
          type: string
        thumbnail_url:
          type: string
        meta:
          type: object
          additionalProperties:
            type: string
      required:
        - title
        - content

Zapisujemy i tyle. Oczywiście poleceń możemy dodać więcej.

Po wydaniu polecenia – napisz artykuł o kolorach i opublikuj go na stronie – napisze i doda artykuł. Możemy podać mu również zdjęcie, ale powyższy przykład obsługuje tylko linki.