Thinking
Bir modelin çalışırken ne yaptığını gösterin. Bir shader küresi ve her adımı izleyen canlı bir etiket, aramaların, kaynak çiplerinin ve akıl yürütmenin daraltılabilir bir izi, ardından desteklediği iddiaların hemen yanında alıntılar içeren bir yanıt.
Uzun beklemeler, işin yapıldığını görebildiğinizde daha kısa hissedilir. Thinking, bir yanıtın en üstüne canlı bir durum satırı koyar: küçük bir shader küresi, “Searching the web” gibi sade sözcüklerle geçerli adım ve çalışan bir zamanlayıcı. Aramaların, kaynakların ve akıl yürütmenin tüm izini okumak için açın.
Kalın bir başlık ve ardından bir paragraf olarak yazılan akıl yürütme bölümlere ayrılır ve yarım yazılmış başlıklar kapanana kadar tutulur. Araç adımları çalışırken bir spinner ve şimdiki zaman etiketi gösterir, ardından ne yaptıklarına geçer; altında kaynak çipleri vardır.
İz, model çalışırken açılır ve bittiğinde, biri kendisi açıp kapatmadıysa, “Thought for 12s” olarak daralır. Yanıt ardından kaynaklarını satır içinde alıntılar: CitedText, [1] ve [2][3] ifadelerini hover'da başlık, alan adı ve alıntı parçası gösteren kompakt çiplere çevirir.
Pro registry'yi components.json dosyasına ekleyin
components.json Token'ınızı ekleyin
Hesap sayfanızda bir token oluşturun ve
.env.localdosyasınaHEXTAUI_PRO_TOKENolarak ekleyin.Bloğu ekleyin
pnpm dlx shadcn@latest add @hextaui-pro/thinking
AI SDK ile
Bir useChat mesajının parçalarını eşleyin: reasoning parçaları Reasoning'e, metin CitedText'e, source-url parçaları kaynakları olarak. Modelden, desteklediği cümlenin sonunda [1], [2] ile alıntı yapmasını isteyin.
Araç adımlarıyla
Araç çağrılarını adımlara çevirin. Hâlâ çalışan bir çağrı spinner ve shimmer gösterir, çıktısı geldiğinde işaretlenir.
Yapı
Dıştan içe doğru birleştirdiğiniz parçalar.
| Parça | Açıklama |
|---|---|
Reasoning | Daraltılabilir durum satırı ve iz. Akıl yürütme metnini, adımları ya da ikisini alır. |
ThinkingOrb | Animasyonlu shader küresi. Kompakt bir meşgul göstergesi olarak tek başına kullanın. |
CitedText | Yanıt, [n] işaretleri alıntı çiplerine dönüştürülmüş olarak. |
Citation | Kaynaklarını listeleyen bir hover kartlı tek çip. |
SourceChips | Bir adımın altında kullanılan kaynak çipleri satırı. |
Reasoning
Ayrıca children dışındaki her div prop'unu kabul eder.
| Prop | Tür | Varsayılan |
|---|---|---|
textŞimdiye kadarki akıl yürütme. **Kalın** satırlar bölüm başlıkları olur. | string | "" |
streamingModelin hâlâ çalışıp çalışmadığı. Küreyi, shimmer'ı ve zamanlayıcıyı yönlendirir. | boolean | false |
stepsAkıl yürütmenin üstünde gösterilen araç adımları. | ReasoningStep[] | [] |
durationBittiğinde gösterilecek saniye. Ölçülen süreyi kullanmak için atlayın. | number | – |
labelAkarken canlı etiketi geçersiz kılar. | string | – |
defaultOpenBaşlangıç açık durumu. Varsayılan olarak akarken açıktır. | boolean | – |
autoCollapseBiri değiştirmediyse akış bitince daraltır. | boolean | true |
ReasoningStep
steps içindeki bir girdi.
| Prop | Tür | Varsayılan |
|---|---|---|
idKararlı anahtar. | string | – |
labelNe yaptığı, örneğin “Searching for debounce”. | string | – |
doneLabelNe yaptığı, status done olunca gösterilir. | string | – |
statusEtkin adımlar bir spinner gösterir ve canlı etiketi yönlendirir. | "active" | "done" | – |
kindSimgeyi ve aşama metnini seçer. | "search" | "read" | "think" | "code" | "think" |
phaseİz açıkken özel aşama metni. | string | – |
detailAdımın altında ek içerik. | ReactNode | – |
sourcesAdımın altında gösterilen çipler. | Source[] | – |
CitedText
Ayrıca children dışındaki her div prop'unu kabul eder.
| Prop | Tür | Varsayılan |
|---|---|---|
textYanıt, iddialardan sonra [1] tarzı işaretlerle. | string | – |
sourcesAlıntı sırasıyla kaynaklar, yani [1] sources[0]'dır. | Source[] | – |
streamingİmleci gösterir ve metni hızlandırır. | boolean | false |
smoothHızlandırmayı kapatır. | boolean | true |
| Prop | Tür | Varsayılan |
|---|---|---|
idKararlı anahtar. | string | – |
urlYeni sekmede açılır. | string | – |
titleHover kartında gösterilir. | string | – |
nameÇip için kısa site adı. Varsayılan olarak alan adıdır. | string | – |
snippetBaşlığın altında gösterilen alıntı. | string | – |
iconFavicon URL'si. Yoksa ilk harfe düşer. | string | – |
ThinkingOrb
Ayrıca her span prop'unu kabul eder.
| Prop | Tür | Varsayılan |
|---|---|---|
activetrue iken canlanır, false iken durur. | boolean | – |
colorsShader için üç hex rengi. | { deep, mid, light } | blue |
speedAnimasyon hızı çarpanı. | number | – |
| Tuş | Action |
|---|---|
| Tab | Durum satırına, ardından ize, ardından her alıntıya geçer. Odaktaki bir alıntı hover kartını açar. |
| EnterSpace | İzi açar veya kapatır. |
| Esc | Açık bir alıntı kartını kapatır. |
- Durum satırı, özetini polite bir live region ile duyuran bir düğmedir; böylece ekran okuyucu kullanıcıları zamanlayıcının her tikini duymadan “Searching the web”, ardından “Thought for 12s” duyar.
- Her alıntı çipi “Source: MDN: Debounce” etiketli gerçek bir bağlantıdır; böylece bir sayı olarak değil bir kaynak olarak okunur.
- Azaltılmış harekette küre durağan bir kare render eder, shimmer durur ve satırlar kaymadan belirir.
Şunlarla geliştirildi
Thinking bloğunun yapıldığı ücretsiz HextaUI bileşenleri. Her biri tek başına yüklenir.
Kod
5 dosya, components/blocks/thinking konumuna eklendi.