Tüm Ürünler
Search
Belge Merkezi

Realtime Compute for Apache Flink:Quick start for real-time data analysis with large language models

Son Güncelleme:Oct 04, 2026

Bu konuda, kendi API anahtarınızı talep etmeden Flink SQL işlerinde yerleşik büyük dil modeli hizmetini kullanarak akışlı duygu analizi ve vektörleştirme yapma yöntemi açıklanmaktadır.

Genel bilgiler

Flink AI hizmeti, yönetilen yerleşik büyük dil modelleri (LLM) sunar. Bir API anahtarı talep etmenize gerek yoktur. Akışlı yapay zeka çıkarımı ve vektörleştirmeyi etkinleştirmek için Flink SQL işlerinde doğrudan yerleşik modelleri kullanın. Aşağıdaki bölümlerde iki temel model kullanım örneği açıklanmaktadır:

  • chat/completions modeli: Diyalog oluşturma ve metin anlama temelli bir LLM'dir. Duygu analizi, niyet tanıma ve soru-cevap sistemleri gibi senaryolarda yaygın olarak kullanılır.

    • Duygu analizi: İşletmenizin sosyal medya yorumlarını gerçek zamanlı olarak sınıflandırarak kullanıcı duygusunu olumlu, olumsuz veya nötr olarak belirler.

    • Akıllı müşteri hizmetleri: Diyalog oluşturma yetenekleriyle desteklenen akıllı müşteri hizmetleri sistemleri için doğal dil etkileşimleri sağlar.

    • İçerik moderasyonu: Daha verimli içerik güvenliği denetimleri sağlamak amacıyla metindeki hassas içeriği veya ilke ihlallerini otomatik olarak algılar.

  • embedding modeli: Metni yüksek boyutlu vektör temsillerine dönüştürür. Yaygın uygulamalar arasında anlamsal arama, öneri sistemleri ve bilgi grafiği oluşturma yer alır.

    • Anlamsal arama: Ürün açıklamalarını veya kullanıcı sorgularını vektörleştirerek alaka düzeyine dayalı anlamsal aramayı etkinleştirir.

    • Öneri sistemleri: Kullanıcı ilgi alanları ile ürün özellikleri arasındaki ilişkileri keşfetmek için metin vektörleştirmesini kullanır ve öneri doğruluğunu artırır.

    • Bilgi grafiği: Yapılandırılmamış metni vektör formatına dönüştürerek sonraki bilgi çıkarma ve ilişki modelleme süreçlerini basitleştirir.

Ön koşullar

Sınırlamalar

  • Ververica Runtime (VVR) 11,7 veya sonraki bir sürüm gerektirir.

  • ML_PREDICT operatörünün aktarım hızı, model hizmeti platformunun hız sınırlama ilkesi tarafından kısıtlanır. Trafik sınırına ulaşıldığında Flink işi geri baskı yaşayabilir veya zaman aşımları nedeniyle yeniden başlatılabilir.

Adım 1: Yerleşik bir modeli kaydedin

Daha fazla bilgi için bkz. Model ayarları.

Chat/completions modeli

Aşağıdaki örnek SQL kodu, bir Flink yerleşik metin modelinin nasıl kaydedileceğini gösterir:

CREATE MODEL ai_analyze_sentiment
INPUT (`input` STRING)
OUTPUT (`content` STRING)
WITH (
    'provider' = 'dashscope',
    'task' = 'chat/completions',
    'model' = 'qwen3.5-flash',
    'system-prompt' = 'Classify the text below into one of the following labels: [positive, negative, neutral, mixed]. Output only the label.'
);

Embedding modeli

Aşağıdaki örnek SQL kodu, bir Flink yerleşik embedding modelinin nasıl kaydedileceğini gösterir:

CREATE MODEL embedding_model
INPUT (`input` STRING)
OUTPUT (`embeddings` ARRAY<FLOAT>)
WITH (
    'provider' = 'dashscope',
    'task' = 'embeddings',
    'model' = 'text-embedding-v4'
);

Adım 2: Bir iş oluşturun

Bir SQL akış işi taslağı oluşturun. Daha fazla bilgi için bkz. Flink SQL işleri.

Adım 3: LLM analizi için bir SQL işi yazın

Chat/completions modeli

Film incelemelerinin duygu analizi için kaydedilen ai_analyze_sentiment modelini çağırmak üzere ML_PREDICT yapay zeka işlevini kullanın.

Aşağıdaki örnek SQL'i SQL düzenleyicisine kopyalayın.

-- Create a temporary sink table.
CREATE TEMPORARY TABLE print_sink(
  id BIGINT,
  movie_name VARCHAR, 
  predict_label VARCHAR, 
  actual_label VARCHAR
) WITH (
  'connector' = 'print',   -- Use the print connector.
  'logger' = 'true'        -- Display the results in the console.
);

-- Create a temporary data view to construct test data.
-- | id | movie_name | comment   | actual_label |
-- | 1  | Her Story     | My favorite part was when the kid guessed the sounds. It is one of the most romantic narratives I have seen in movies. Very gentle and loving. | POSITIVE |
-- | 2  | The Dumpling Queen   | Unremarkable.  | NEGATIVE |
CREATE TEMPORARY VIEW movie_comment(id, movie_name, user_comment, actual_label)
AS VALUES (1, 'Her Story', 'My favorite part was when the kid guessed the sounds. It is one of the most romantic narratives I have seen in movies. Very gentle and loving.', 'positive'), (2, 'The Dumpling Queen', 'Unremarkable.', 'negative');

INSERT INTO print_sink
SELECT id, movie_name, content as predict_label, actual_label 
FROM ML_PREDICT(
  TABLE movie_comment, 
  MODEL ai_analyze_sentiment,  -- The registered Flink built-in text model.
  DESCRIPTOR(user_comment));   

Embedding modeli

Film incelemeleri için embedding'ler oluşturmak ve ardından sonuçları Milvus (genel önizleme) hizmetine yazmak için kaydedilen embedding_model modelini çağırmak üzere ML_PREDICT yapay zeka işlevini kullanın.

Aşağıdaki örnek SQL'i SQL düzenleyicisine kopyalayın.

-- Create a temporary sink table named milvus_sink.
CREATE TEMPORARY TABLE milvus_sink
(
    id STRING,
    movie_name STRING,
    user_comment STRING,
    embeddings ARRAY<FLOAT>,
    PRIMARY KEY (id) NOT ENFORCED
)
WITH (
    'connector' = 'milvus',
    'endpoint' = '<YOUR-ENDPOINT>',
    'port' = '<YOUR-PORT>',
    'userName' = '<YOUR-USERNAME>',
    'password' = '<YOUR-PASSWORD>',
    'databaseName' = 'default',
    'collectionName' = 'movie-comment-embeddings'
);

-- Create a temporary data view to construct test data.
-- | id | movie_name | comment |
-- | 1 | Her Story |My favorite part was when the kid guessed the sounds. It is one of the most romantic narratives I have seen in movies. Very gentle and loving.|
-- | 2 | The Dumpling Queen | Unremarkable. |
CREATE TEMPORARY VIEW movie_comment(id, movie_name,  user_comment)
AS VALUES ('1', 'Her Story', 'My favorite part was when the kid guessed the sounds. It is one of the most romantic narratives I have seen in movies. Very gentle and loving.'), ('2', 'The Dumpling Queen', 'Unremarkable.');

INSERT INTO
    milvus_sink
SELECT
    id,
    movie_name,
    user_comment,
    embeddings
FROM
    ML_PREDICT (
        TABLE movie_comment,
        MODEL embedding_model,  -- The registered Flink built-in embedding model.
        DESCRIPTOR (user_comment)
    );

Adım 4: İşi dağıtın ve başlatın

İşi dağıtın ve başlatın. Daha fazla bilgi için bkz. Flink SQL işleri.

Adım 5: Analiz sonuçlarını görüntüleyin

Chat/completions modeli

  1. İş durumunun FINISHED olduğunu doğrulayın.

    image

  2. O&M konsolunda, Deployments sayfasına gidin ve hedef işin adına tıklayın.

  3. Logs sekmesinde, Task Managers alt sekmesine tıklayın ve current TaskManager öğesini seçin.

  4. Logs seçeneğine tıklayın ve PrintSinkOutputWriter ile ilgili günlükleri arayın.

    Modelin tahmin ettiği etiket predict_label gerçek etiketle actual_label eşleşir.

    Task Managers sekmesinde soldaki Running Logs öğesini seçin. Günlükler, +I[1, Her Story, positive, positive] ve +I[2, The Dumpling Queen, negative, negative] gibi PrintSinkOutputWriter çıktısını görüntüler. Bu durum, predict_label değerinin actual_label değeriyle eşleştiğini gösterir.

    1

İlgili belgeler