Bir uygulama akışı geliştirdikten sonra bunu Elastic Algorithm Service (EAS) hizmeti olarak dağıtabilirsiniz. EAS; otomatik ölçeklendirme ve kapsamlı Hizmet İzleme gibi özellikler sunar. Bu özellikler uygulamanızın iş değişikliklerine uyum sağlamasına, sistem kararlılığını ve performansını artırmasına ve üretim ortamının gereksinimlerini karşılamasına yardımcı olur.
Ön koşullar
Bir uygulama akışı oluşturmuş ve hata ayıklamasını tamamlamış olmanız gerekir. Daha fazla bilgi için bkz. Uygulama akışı geliştirme.
Uygulama akışını dağıtma
LangStudio adresine gidin ve bir çalışma alanı seçin. Application Flow sekmesinde hata ayıkladığınız uygulama akışına tıklayın ve ardından sağ üst köşede yer alan Deploy öğesine tıklayın. Çalışma zamanı başlatılmışsa uygulama akışını dağıtabilirsiniz. Aşağıdaki tabloda ana parametreler açıklanmaktadır.

Parametre | Açıklama |
Kaynak dağıtımı | |
Kaynak türü | Oluşturduğunuz bir ortak kaynak grubunu veya özel kaynak grubunu seçin. |
Örnekler | Hizmet örneklerinin sayısını yapılandırın. Üretim ortamında tek nokta arızası riskini azaltmak için birden fazla hizmet örneği yapılandırın. |
Dağıtım kaynakları | Uygulama akışını yalnızca iş akışı zamanlaması için kullanıyorsanız iş akışının karmaşıklığına göre uygun CPU kaynaklarını seçin. GPU kaynaklarına kıyasla CPU kaynakları genellikle daha maliyet etkindir. Dağıtımdan sonra EAS için kaynak ücreti tahsil edilir. Faturalandırma hakkında daha fazla bilgi için bkz. Elastic Algorithm Service (EAS) faturalandırması. |
Virtual Private Cloud (VPC): Bir uygulama akışı EAS hizmeti olarak dağıtılır. Dağıtımdan sonra istemcilerin çevrimiçi EAS hizmetine erişebilmesini sağlamak için istemciyi hizmete bağlayacak bir VPC seçin. EAS hizmetlerinin varsayılan olarak genel ağa erişemediğini unutmayın. EAS hizmetinizin genel ağa erişmesi gerekiyorsa genel ağ erişim yeteneklerine sahip bir VPC yapılandırın. Daha fazla bilgi için bkz. EAS üzerinden genel veya özel kaynaklara erişim. Not Uygulama akışı Milvus gibi bir vektör veritabanı bağlantısı içeriyorsa yapılandırılan VPC'nin vektör veritabanı örneğinin bulunduğu VPC ile aynı olduğundan veya iki ağın birbirine bağlı olduğundan emin olun. | |
Sohbet geçmişi | |
Sohbet geçmişini etkinleştir | Bu parametre yalnızca sohbet tabanlı uygulama akışları için geçerlidir. Etkinleştirildiğinde hizmet çok turlu konuşmaların geçmişini depolayabilir ve iletebilir. Bu özelliği hizmet isteği üstbilgi parametresi ile birlikte kullanmanız gerekir. |
Sohbet geçmişi depolama | Yerel depolama çoklu örnek dağıtımını desteklemez. Hizmeti üretim kullanımı için dağıtıyorsanız ApsaraDB RDS gibi harici depolama kullanın. Daha fazla bilgi için bkz. Ek: Sohbet geçmişi. Önemli Yerel depolama kullanırsanız çoklu örnek dağıtımı desteklenmez. Tek bir örnekten birden fazla örneğe ölçek genişletme de desteklenmez. Aksi takdirde sohbet geçmişi özelliği düzgün çalışmayabilir. |
İzleme Analizi: Etkinleştirildiğinde hizmet dağıtıldıktan sonra izleme ayrıntılarını görüntüleyebilir ve uygulama akışının performansını değerlendirebilirsiniz. | |
Roller ve izinler: Uygulama akışında Faiss vektör veritabanı (bilgi bankası yönetimi için Faiss veya Milvus vektör veritabanı seçmeniz gerekir) veya "Alibaba Cloud IQS-Standard Search" bileşeni (IQS Web Arama Sohbet Asistanı şablonu tarafından kullanılır) kullanılıyorsa gerektiğinde bir rol seçin. | |
Parametre ayarları hakkında daha fazla bilgi için bkz. Özel dağıtım.
Çevrimiçi hata ayıklama
Hizmeti çağırma
Çevrimiçi hata ayıklama
Hizmet başarıyla dağıtıldıktan sonra PAI-EAS konsoluna yönlendirilirsiniz. Online Debugging sekmesinde bir isteği yapılandırıp gönderebilirsiniz. İstek gövdesindeki anahtar uygulama akışının Başlangıç düğümündeki "Conversation Input" parametresinin değeriyle aynı olmalıdır. Bu konuda varsayılan alan olan question kullanılmaktadır.

API çağrıları
-
Overview sekmesinden hizmet uç noktasını ve belirteci edinin.

-
Bir API isteği gönderin.
Hizmeti temel modda veya tam modda çağırabilirsiniz. Aşağıdaki tabloda farklar açıklanmaktadır.
Özellik
Temel mod
Tam mod
İstek yolu
<Endpoint>/<Endpoint>/runAçıklama
Uygulama akışının çıktısını doğrudan döndürür.
Düğüm durumu hata iletileri ve uygulama akışının çıktı iletilerini içeren karmaşık bir yapı döndürür.
Senaryolar
Yalnızca uygulama akışının son çıktısına ihtiyacınız vardır ve dahili işlemeye veya duruma önem vermezsiniz.
Sonuçları hızlıca elde etmek için basit sorgular veya işlemler için uygundur.
Her düğümün durumu ve olası hata iletileri dahil olmak üzere uygulama akışının yürütme sürecini ayrıntılı olarak anlamak istersiniz.
Uygulama akışının yürütülmesini hata ayıklama izleme veya analiz etme amaçları için uygundur.
Avantajlar
Kullanımı basittir. Karmaşık yapıları ayrıştırmanıza gerek kalmaz.
Uygulama akışının yürütme sürecini derinlemesine anlamanıza yardımcı olacak kapsamlı bilgiler sağlar.
Uygulama akışının performansını sorun gidermeye ve optimize etmeye yardımcı olur.
Temel mod
cURL komutu
Python betiği
Tam mod
LangStudio Server-Sent Events (SSE) özelliğini destekler. Bir istek gönderdiğinizde hizmet uygulama akışının yürütülmesi sırasında her düğümün durumunu hata iletilerini ve çıktı iletilerini çıkarabilir. Ayrıca olaylardaki
node_run_infosiçeriğini özelleştirebilirsiniz. Bu bölümde örnek olarak çevrimiçi hata ayıklama kullanılmaktadır. Uç noktaya/runeklemeniz ve ardından istek gövdesini düzenlemeniz gerekir:
Aşağıdaki tabloda istek gövdesindeki alanlar açıklanmaktadır.
Alan
Tür
Varsayılan değer
Açıklama
inputs
Mapping[str, Any]
None
Akış için giriş verileri sözlüğü. Anahtarlar akışta tanımlanan giriş alan adlarıyla eşleşmelidir. Akışın girişi yoksa bu alanı yoksayın.
stream
bool
True
Yanıt biçimini kontrol eder. Geçerli değerler:
True: Bir SSE akışı ile yanıt verir. Yanıt üstbilgisindeki Content-Type değeri
text/event-streamşeklindedir. Veriler DataOnly biçiminde döndürülür ve RunStarted NodeUpdated RunOutput ve RunTerminated gibi farklı olaylara bölünür. Daha fazla bilgi için aşağıdaki bölümlere bakın.False: Tek bir JSON nesnesi ile yanıt verir. Yanıt üstbilgisindeki Content-Type değeri
application/jsonşeklindedir. Daha fazla bilgi için Çevrimiçi hata ayıklama bölümündeki yanıta bakın.
response_config
Dict[str, Any]
-
Stream değeri True olarak ayarlandığında akışlı yanıtta dahil edilen düğüm ayrıntılarını kontrol eder.
∟ include_node_description
bool
False
(response_config içinde) SSE olay akışında düğüm açıklamalarının dahil edilip edilmeyeceğini belirtir.
∟ include_node_display_name
bool
False
(response_config içinde) SSE olay akışında düğüm görünen adlarının dahil edilip edilmeyeceğini belirtir.
∟ include_node_output
bool
False
(response_config içinde) SSE olay akışında düğüm çıktılarının dahil edilip edilmeyeceğini belirtir.
∟ exclude_nodes
List[str]
[]
(response_config içinde) SSE olay akışından hariç tutulacak düğüm adlarının listesi.
Döndürülen veriler RunStarted NodeUpdated RunOutput ve RunTerminated gibi farklı olaylara bölünür.
OpenAI uyumlu çağrılar
Dağıtılan bir sohbet uygulama akışı veya ChatFlow OpenAI uyumlu çağrıları destekler. Hizmet OpenAI'yi destekleyen diğer istemciler tarafından da kullanılabilir.
OpenAI API'sini kullanma
Bu bölümde cURL komutu kullanılarak yapılan bir akışlı çağrı örneği sunulmaktadır. Aşağıda istek ve yanıt örnekleri verilmiştir:
Örnek istek:
curl --location '<Endpoint>/v1/chat/completions' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
"model": "default",
"messages": [
{
"role": "system",
"content": "You are a helpful assistant."
},
{
"role": "user",
"content": "Who are you?"
}
],
"stream":true
}'
Aşağıdaki tabloda istek parametreleri açıklanmaktadır.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Örnek yanıt:
data: {"choices":[{"delta":{"content":"","role":"assistant"},"index":0,"logprobs":null,"finish_reason":null}],"object":"chat.completion.chunk","usage":null,"created":1715931028,"system_fingerprint":null,"model":"qwen-plus","id":"chatcmpl-3bb05cf5cd819fbca5f0b8d67a025022"}
data: {"choices":[{"finish_reason":null,"delta":{"content":"I am"},"index":0,"logprobs":null}],"object":"chat.completion.chunk","usage":null,"created":1715931028,"system_fingerprint":null,"model":"qwen-plus","id":"chatcmpl-3bb05cf5cd819fbca5f0b8d67a025022"}
data: {"choices":[{"delta":{"content":"a large"},"finish_reason":null,"index":0,"logprobs":null}],"object":"chat.completion.chunk","usage":null,"created":1715931028,"system_fingerprint":null,"model":"qwen-plus","id":"chatcmpl-3bb05cf5cd819fbca5f0b8d67a025022"}
data: {"choices":[{"delta":{"content":"language model"},"finish_reason":null,"index":0,"logprobs":null}],"object":"chat.completion.chunk","usage":null,"created":1715931028,"system_fingerprint":null,"model":"qwen-plus","id":"chatcmpl-3bb05cf5cd819fbca5f0b8d67a025022"}
data: {"choices":[{"delta":{"content":"created by Alibaba Cloud"},"finish_reason":null,"index":0,"logprobs":null}],"object":"chat.completion.chunk","usage":null,"created":1715931028,"system_fingerprint":null,"model":"qwen-plus","id":"chatcmpl-3bb05cf5cd819fbca5f0b8d67a025022"}
data: {"choices":[{"delta":{"content":". I am called Qwen."},"finish_reason":null,"index":0,"logprobs":null}],"object":"chat.completion.chunk","usage":null,"created":1715931028,"system_fingerprint":null,"model":"qwen-plus","id":"chatcmpl-3bb05cf5cd819fbca5f0b8d67a025022"}
data: {"choices":[{"delta":{"content":""},"finish_reason":"stop","index":0,"logprobs":null}],"object":"chat.completion.chunk","usage":null,"created":1715931028,"system_fingerprint":null,"model":"qwen-plus","id":"chatcmpl-3bb05cf5cd819fbca5f0b8d67a025022"}
data: [DONE]
Diğer istemci uygulamalarıyla entegrasyon
Bu bölümde Windows platformundaki ChatBox v1.13.4 uygulaması örnek olarak kullanılmaktadır.
Chatbox uygulamasını indirin ve yükleyin.
-
ChatBox'u açın ve Model Provider Name gibi bir model sağlayıcı adı yapılandırın.

-
Yapılandırılan model sağlayıcıyı seçin ve hizmet istek parametrelerini yapılandırın.

Aşağıdaki tabloda ana parametreler açıklanmaktadır.
Parametre
Açıklama
API Mode
Değer sabit olarakOpenAI API Compatibleşeklindedir.
API Key
Dağıtılan LangStudio hizmetinin belirteci. Belirteci edinme hakkında daha fazla bilgi için bkz. API çağrılarının 1. Adımı.
API Host
Dağıtılan LangStudio hizmetinin uç noktası. Uç noktayı edinme hakkında daha fazla bilgi için bkz. API çağrılarının 1. Adımı. Uç noktanın sonuna/v1sonekini ekleyin. Bu konuda İnternet uç noktası örnek olarak kullanılmaktadır. API host değerihttp://langstudio-20250319153409-xdcp.115770327099****.cn-hangzhou.pai-eas.aliyuncs.com/v1olarak ayarlanır.
API Path
Değer sabit olarak/chat/completionsşeklindedir.
Model
New öğesine tıklayın ve qwen3-8b gibi özel bir model ID girin. -
Sohbet iletişim kutusunda dağıtılan LangStudio hizmetini çağırın.

İzlemeleri görüntüleme
Hizmeti çağırdıktan sonra otomatik olarak bir izleme oluşturulur. Tracing Analysis sekmesinde görüntülemek istediğiniz izlemeyi bulun ve uygulama akışının performansını değerlendirmek için Actions sütunundaki View Trace öğesine tıklayın.

İzleme verileri vektör veritabanından alınan alma sonuçları veya LLM düğümünün girdi ve çıktısı gibi uygulama akışındaki her düğümün girdi ve çıktısını görüntülemenize olanak tanır.
Ek: Sohbet geçmişi
Sohbet tabanlı uygulama akışları için LangStudio çok turlu konuşmaların geçmişini depolama özelliği sağlar. Sohbet geçmişini kaydetmek için yerel depolama veya harici depolama kullanabilirsiniz.
Depolama türleri
Yerel depolama: Hizmet uygulama akışının dağıtıldığı EAS örneğinde chat_history.db adlı bir SQLite veritabanını otomatik olarak oluşturmak için yerel diski kullanır. Bu veritabanı sohbet geçmişini kaydeder. Varsayılan depolama yolu
/langstudio/flow/şeklindedir. Not: Yerel depolama çoklu örnek dağıtımını desteklemez. Yerel disk kullanımını düzenli olarak kontrol etmelisiniz. Sohbet geçmişi verilerini sorgulamak ve silmek için sağlanan API işlemlerini de kullanabilirsiniz. EAS örneği kaldırıldığında ilgili sohbet geçmişi de silinir.Harici depolama: ApsaraDB RDS for MySQL desteklenir. Hizmeti dağıtırken sohbet geçmişini depolamak için bir ApsaraDB RDS for MySQL örneğine bağlantı yapılandırmanız gerekir. Yapılandırma hakkında daha fazla bilgi için bkz. Veritabanı bağlantısı yapılandırması. Hizmet yapılandırılan ApsaraDB RDS for MySQL veritabanında hizmet adını sonek olarak kullanan tabloları otomatik olarak oluşturur. Örneğin
langstudio_chat_session_<service_name>tablosu sohbet oturumlarını saklar velangstudio_chat_history_<service_name>tablosu sohbet geçmişi iletilerini saklar.
Oturum ve kullanıcı desteği
Uygulama akışı hizmetine yapılan her sohbet isteği durumu korumaz (stateless). Birden fazla isteğin aynı konuşma olarak ele alınmasını istiyorsanız istek üstbilgisini manuel olarak yapılandırmanız gerekir. API çağrıları yapma hakkında daha fazla bilgi için bkz. API çağrıları.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Sohbet geçmişi API'si
Uygulama akışı hizmeti ayrıca sohbet geçmişi verilerini yönetmek için API işlemleri sağlar. Bu API işlemlerini verileri görüntülemek ve silmek için kullanabilirsiniz. Tam API şemasını almak için {Endpoint}/openapi.json adresine bir GET isteği gönderin. Şema Swagger standardına dayanır. Bu API işlemlerini daha iyi anlamak ve keşfetmek için görselleştirme amacıyla Swagger UI kullanabilirsiniz. Bu işlemleri basitleştirir ve netliği artırır.