koogSpringAiVectorStoreDispatcher

@Bean
@ConditionalOnMissingBean(name = ["koogSpringAiVectorStoreDispatcher"])
open fun koogSpringAiVectorStoreDispatcher(properties: KoogSpringAiVectorStoreProperties, @Qualifier(value = "applicationTaskExecutor") asyncTaskExecutorProvider: ObjectProvider<AsyncTaskExecutor>): CoroutineDispatcher(source)

Creates a CoroutineDispatcher for blocking Spring AI vector-store calls.

Dispatcher selection is controlled by KoogSpringAiVectorStoreProperties.dispatcher:

  • ai.koog.spring.ai.common.DispatcherType.AUTO: uses Spring's AsyncTaskExecutor when available (e.g. virtual-thread executor with spring.threads.virtual.enabled=true), otherwise falls back to Dispatchers.IO.

  • ai.koog.spring.ai.common.DispatcherType.IO: always uses Dispatchers.IO, optionally limited to dispatcher.parallelism threads.