Bileşen API'si
Bir component, bir component.yml manifesti artı bir src/ dizini ile bildirilen, yeniden kullanılabilir tipli bir kod birimidir — Python veya C++. Bu sayfa, tüm bileşen yüzeyinin tek genel bakışıdır: manifest alanları, tip sistemi ve Python ile C++ runtime API'leri. Kasıtlı olarak genel bakış seviyesinde kalır — alan başına ve modül başına ayrıntılı referans, CLI ve in-shell agent (ppl docs get …, ppl docs tree) aracılığıyla sunulur, böylece derinlik tam olarak inşa ettiğiniz yerde yaşar.
Manifest
Her component, kökünde kimliği, build ortamını, tipli I/O'yu, config parametrelerini, dosya ve model bağımlılıklarını ve isteğe bağlı HTTP uç noktalarını bildiren bir component.yml taşır. Manifest kendi referansıdır — config_schema, file_schema, generated_file_schema, cache ve http örnekleriyle her alan için Component contract sayfasına bakın.
Tip sistemi
Her type: slotu — I/O, config ve file bindings — aynı tip-ifadesi dilbilgisini kullanır.
- Tip ifadesi söz dizimi — atomikler, listeler
[T], generic'lerT<U>, union'larT | U, tuple'lar(A, B)ve record'lar{f: T}. - Tipler — tip sistemi genel bakışı ve
ppl backend change-parameterkomutunun beklediği değer-literal dilbilgisi. - Adlandırılmış tipler —
Image,AudioFrame,Tensorve geometri ilkellerinin kataloğu. - File type kataloğu — bir
file_schemaslotunun kabul ettiğifile_typedeğerleri.
Dil API'leri
runtime API'si dile göre ayrılır — her biri bir sayfa, ikisi de yukarıdaki manifest ve tip sistemi üzerine kuruludur. Her dil, CLI'den erişilebilen işlem aileleri ekler (vision her ikisinde; metrikler, sinyal ve klasik ML Python'da).
- Python bileşen API'si —
run(handler)giriş noktası,configve mutable senkronizasyon, durum tutan ve streaming desenleri, sanal I/O ve medya sarmalayıcıları. Hızlı yineleme dili. - C++ bileşen API'si — component sınıfı, I/O biçimleri, runtime yardımcıları, medya sarmalayıcıları ve domain istemcileri. Performans dili.
Agent özeti
- Agent meta verileri — nesnel agent'ların bir component'i katalogdan seçmek için okuduğu
AGENT.yml/AGENT.jsonşeması.
Derleme ve yayınlama
Manifest ve dil API'leri kaynakta durur; bunların etrafındaki yaşam döngüsü concept ve flow sayfalarında yaşar.
- Build systems —
build_systemimajı nasıl seçer. - Install modes — build-time'a karşı node-time yükleme.
- Release semantics — publish neyi paketler, etiketler ve yükler.
CLI'de tam referans
Yukarıdaki her bölümün ayrıntısı bir komut uzaklıkta:
ppl docs get component-api/component-contract # every manifest field, with examplesppl docs get type-api/type-syntax # the full type grammarppl docs get component-api/python/component # Python entrypoint; swap the last segment per moduleppl docs get component-api/cpp/component # C++ entrypoint; swap the last segment per moduleppl docs tree | grep '^component-api/' # list every reference page