Search for answers or browse our knowledge base.
GenAI Quickstart Tutorial
0 out of 5 stars
5 Stars | 0% | |
4 Stars | 0% | |
3 Stars | 0% | |
2 Stars | 0% | |
1 Stars | 0% |
Objectives
Create a simple running application using Vantiq’s Generative AI capabilities.
Tutorial Overview
This tutorial demonstrates the Design Modeler, a visual IDE tool for building Vantiq systems. It uses the Design Modeler’s AI Design Assistant, a UI that allows the user to enter a text description of the system to be built then uses Generative AI to turn that description into the beginnings of the running application. The basic steps to create this application are:
- Create a new Project
- Use the Design Modeler’s AI Design Assistant to turn a simple application description into a Flow View and then generate a starting Design Model
- Create a Source to receive simulated sensor data
- Finish configuring the Design Model
- Run the application in simulation
Note: if needed, you can import a finished version of this project using the Projects button and select Import. Select Tutorials for Import Type, then select Quickstart from the second drop-down, then click Import.
Namespace Privileges
In addition, when following the Tutorials, please make sure you are logged in as the administrator of the Vantiq namespace to which you are assigned. You can check your privilege level by clicking on your username in the title bar. If the bottom of the popup says, “Developer” or “Namespace Admin” at the bottom, you have the needed privileges. If it says, “User (Developer),” then you need to change to a Developer namespace. You may need to first create your own Developer namespace, as described here: Creating a Developer Namespace.
1: Creating a Temperature Alert Project
The first task in building the temperature alerting system is to create a Project in the Vantiq IDE.
Note: You will be alerted if you do not have permission to create a project in the current namespace. You need to change to, or create, a namespace where you have Developer or Namespace Admin privilege (see above).
Use the Project menu to select New Project, which displays the New Project Wizard. Either create a new Namespace (recommended) or add a new project to the current Namespace, select Design Model as the Project type and click Continue.
Set the Project name to TemperatureAlert and click Go to New Design Model Dialog.
Define the Design Model as:
- Model Name: TemperatureAlert
- Package: com.vantiq.quickstart
- Use AI Design Assistant
Click OK to confirm.
2: Using the AI Design Assistant
After the Design Model generation is complete, the com.vantiq.quickstart.TemperatureAlert Design Model pane is displayed:
On the right of the pane, the AI Design Assistant is displayed. Use the text entry field at the bottom of the Assistant to enter the following text:
Receive temperature events from MQTT source 'TempMQTT'.
If the temperature crosses a threshold of 200 degrees,
notify user 'maintenance' via the 'Maintenance' Client.
This short text describes a simple temperature sensing application, reading from an MQTT Source and notifying a user when a high temperature threshold is crossed. Once the text has been entered, the Assistant displays the Generate App Flow From Description button. Click that button to send the description to the AI system to have the Design Modeler produce an App Flow, which is a graph representation of how data events will be processed by the Vantiq system. Please note the AI system response may take several seconds up to a minute or more depending on the complexity of the description entered.
The App Flow for this example will look similar to this:
This App Flow looks like a good representation of the example application. However, it is likely that other initial App Flows won’t match what the user imagined. The use of the Assistant is meant to be an iterative process: the description of the text is modified and new App Flows are generated until the user is satisfied with the results. When that happens, click the Edit App Flow button in the Assistant.
3: Editing the App Flow
The AI Design Assistant can only produce a high level skeleton that expresses the natural language description of your application. Next you will need to add details to turn it into a running application.
The App Flow can be further refined in the resulting Flow Preview mode:
This Flow Preview contains four nodes in its graph. These represent either Vantiq Event Handler tasks or Vantiq Clients.
- TempMQTT: this is an Event Stream task that represents receiving the MQTT temperature sensor readings.
- ThresholdNode: this is a Threshold task that tests for the specified temperature threshold value.
- NotifyNode: this is a Notify task which sends a Vantiq Client notification message to the Vantiq mobile app.
- Maintenance: this represents the Vantiq Client that receives the temperature notification.
Flow Preview mode allows for adding new Event Streams, Event Handler tasks, and Clients by dragging and dropping from the palette on the left to the graph canvas. For most purposes, adding new elements to the graph will be unnecessary.
4: Generating the Design Model
Once satisfied with the Flow Preview graph, click the Generate Design Model button to create a Design Model. (If you’d like to start over to generate new App Flows using the AI Design Assistant, click the Cancel button to return to Step 2 above.)
After the Design Model is generated, the Design Model pane will look similar to this:
The graph contains three nodes:
- TempMQTT: the white-titled node represents an External System. In this case, it’s a placeholder for the MQTT server that’s delivering the temperature sensor readings.
- TempMQTT: the green-titled node represents the Service that implements the sensor reading Event Handler.
- Maintenance: the purple-titled node that represents the Client that receives the temperature threshold notification.
For more detailed information about the Design Modeler, please consult its Reference Guide.
5: Create the TempMQTT Source
The application description sent to the AI Design Assistant specified an MQTT sensor data Source called TempMQTT. This Vantiq Source must be created in order to run the TempMQTT Event Stream task described in the preceding sections. This Source will receive simulated temperature readings from a public Vantiq MQTT server.
Use the Add menu to select Source…:
Use the New Source button to display the New Source pane. Enter the following values to configure the source:
- Source Name: TempMQTT
- Package: com.vantiq.quickstart
- Source Type: MQTT
Add a Server URI from the Server URI tab: tcp://public.vantiq.com:1883
Add a Topic from the Topic tab: com.vantiq.mqtt.enginetemp
Save the Source.
6: Address the Design Model To Do List
The lower left of the Design Model contains the To Do List. The To Do List contains errors found in the TempMQTT Service created for the Design Modeler. These errors are normal and are associated with Event Handler tasks that need to be configured in order to have a completely running application.
Clicking on a To Do List item causes the Service pane that contains the error to be displayed. Click on the first error in the list which will cause the com.vantiq.quickstart.TempMQTT Service to display and automatically navigate to the Implement tab which contains the TempMQTT Inbound Event Handler associated with the error. The Service pane should look like this:
Click the TempMQTT task (the red border around this node indicates there is an error), then click the Click to Edit link in the ‘EventStream’ Activity slide out on the right side of the pane. Edit the following value to configure the task:
- inboundResource: com.vantiq.quickstart.TempMQTT
This task will now receive events from the com.vantiq.quickstart.TempMQTT Source from the previous step. Click OK to save the configuration.
Click the ThresholdNode task, then click the Click to Edit link in the ‘Threshold’ Activity slide out on the right side of the pane. Edit the following values to configure the task:
- condition: event.temperature > 200
- direction: true
- initializeCondition: false
- overConsecutiveReadings: 2
These values cause the ThresholdNode task to forward temperature events to the next task (NotifyNode) if there are two consecutive temperature readings above 200. Click OK to save the configuration.
Next, click the NotifyNode task then click the Click to Edit link in the slideout. Edit the following values to configure the task:
- title: “Temperature Threshold Crossed”
- body: “Temperature has crossed the threshold of 200 degrees: ” + event.temperature
- users: users Type: Expression, users: [Context.username()]
- clientName: com.vantiq.quickstart.Maintenance
These values cause the NotifyNode task to send a notification the current Vantiq user (it uses the valid Vantiq user ID for your Vantiq organization in order to receive notification using the Vantiq mobile apps) which will run the Maintenance Client whenever the temperature exceeds 200. Please note that you’ll have to add ” (double-quote) characters in the title and body property values in order to have them correctly interpreted. Click OK to save the configuration.
7: Running the Application
Save the com.vantiq.quickstart.TempMQTT Service. By configuring the two tasks with errors, the Design Modeler To Do List should be empty and the application should start running. If it is running correctly, the TempMQTT Event Handler graph should look similar to this:
Note the rectangular badges with numbers that appear over the tasks. These badges increment as each task event is received. This means the Source is configured correctly and the TempMQTT Service is successfully receiving and processing those events.
8: Example AI Design Assistant Descriptions
The AI Design Assistant uses a generative AI engine to translate natural language descriptions of a desired system into skeletons of Design Models. Those descriptions are generally referred to as prompts. Writing effective prompts is referred to as prompt engineering. In order to make effective use of the AI Design Assistant, it’s helpful to have some examples of prompts that are good starting points to describe business processes. Below are a few examples of such prompts that translate to terms understood by the Vantiq system.
Patient Care Example
Patient vital sign events are received from the ‘/vitals’ Topic and are of type Vitals. If a vital sign property is above or below a threshold value, the vital signs are saved in the database using the Patient type and the patient’s doctor is notified using the PatientCare Client. The patient’s doctor receives the notification and interviews the patient using the PatientCare Client. Patient interview text events are received and the Patient type is updated with the new interview text. The interview text is also sent to a Procedure which generates suggestions for a diagnosis and treatment plan. The treatment plan is sent as a new notification to the doctor using the PatientCare Client.
Pump Monitoring Example
There is a pump with a temperature and pressure sensor. Join the two events together and notify a technician when the pressure is over 150. Track the technician’s location and send a notification to the factory manager when they are close. Send a notification to the factory manager when the technician has resolved the issue.
Image Processing Example
Source “imageSrc” produces an event when a person is passing through the building entrance. The event can be described as type “com.alertcalifornia.cameras”. Count the number of people entering and leaving the building. Then use those numbers to calculate the number of people remaining in the building. Generate an alert if there are more than 300 people in the building.
0 out of 5 stars
5 Stars | 0% | |
4 Stars | 0% | |
3 Stars | 0% | |
2 Stars | 0% | |
1 Stars | 0% |
-
Getting Started
-
-
- Advanced Collaborations
- Analytics
- App Components
- Assemblies
- Catalogs Tutorial
- Client Builder
- Client Components
- Deployment Tutorial
- Floor Plan
- Introduction to Collaboration
- Natural Language Tutorial
- Sources
- Stateful Services
- System Modeler
- Testing the Debugging Tutorial
- Testing the Introductory Tutorial
- Testing the Source Tutorial
- User and Namespace Administration
- Show Remaining Articles ( 3 ) Collapse Articles
-
-
Product Documentation
-
-
-
- Accessing Documents
- Automatic Document Caching
- Client Resources
- Client Startup
- Control Widgets in the "Views" Portion of Client Builder
- Controllers
- Creating A Client
- Data Objects
- Data Stream Widgets in the “Views” Portion of Client Builder
- Data Streams
- Debugging
- Field Validation
- Introduction
- Launching Clients from a browser
- Layout Widgets in the “Views” Portion of Client Builder
- Localizing Clients
- Navigation Between Pages
- Offline Operation
- On Start Events
- Public Clients
- Server Requests
- Terminating The Client
- The Client Builder Concepts
- The Client Builder's Canvas Section
- The Client Builder's Control Dock
- The Client Builder's Palette Area
- The Client Builder's Slideout Section
- Uploading data to the Server
- Show Remaining Articles ( 13 ) Collapse Articles
-
- ‘On Assets Loaded’ Event
- ‘On Change’ Event
- ‘On Click’ Event
- ‘On Client Start’ Event
- ‘On Context Menu’
- ‘On Data Arrived’ Event
- ‘On End’ Event
- ‘On End’ Event
- ‘On Network Status Changed’ Event
- ‘On Start’ Event
- ‘On Start’ Event
- ‘On Swipe’
- ‘On Validation’ Event
- abort()
- AccordionLayout
- addAPIRequestFor(responseObjectProperty:string):boolean
- addEventHandler()
- addRequestFor(widgetName:string):boolean
- addRequestForDataURL():void
- addRequestsForClient():boolean
- addRequestsForCurrentPage():boolean
- addRequestsForPage(pageName:string):boolean
- adjustPopupSizeAndPosition()
- AudioRecorder
- Basic Information
- cancelSpeaking()
- children
- clearInterval()
- clearTimeout()
- clearUpload()
- clearValidationErrors()
- clone()
- closeIcon:string
- closeIcon:string
- closePopup()
- confirmCustom()
- confirmCustomEx()
- copyMatchingData(obj:any):void
- createClientEventDataStream()
- createDataChangedDataStream()
- createOutboundServiceEventDataStream()
- createPagedQueryDataStream()
- createPublishEventDataStream()
- createResourceEventDataStream()
- createResponseObject()
- createSourceEventDataStream()
- createTimedQueryDataStream()
- data
- data
- DataObject
- DataStream
- defaultSubmit()
- deleteAll()
- deleteOne()
- deleteOne()
- documentGroupName:string
- documentName:string
- errorDialog()
- execute()
- execute()
- executePublic()
- executePublic()
- executeStreamed()
- executeStreamed()
- executeStreamedPublic()
- executeStreamedPublic()
- fontColor:string
- fontFace:string
- fontSize:number
- fontStyle:string
- fontWeight:string
- formatMsg()
- generateUUID()
- getCollaborationContext()
- getCurrentPage()
- getCurrentPopup()
- getDataStreamByName()
- getDataStreamByUUID()
- getDeviceId()
- getDeviceName()
- getDocumentAssetLabelList()
- getDocumentAssetList()
- getDocumentUrl()
- getGroupNames()
- getLocation()
- getName()
- getProfileNames()
- getRequestParameters()
- getStateObject()
- getUsername()
- getUserRecord()
- getWidget()
- goToPage()
- hideCancelButton()
- Http
- infoDialog()
- initializePropertyToDefaultValue(propertyName:string):void
- initializeToDefaultValues():void
- insert()
- insert()
- instance
- isExpanded:Boolean
- isNetworkActive
- isPaused:boolean
- isPublic
- localeCountryCode
- localeLanguageCode
- localeVariantCode
- logout()
- markupImage()
- maxDurationInSeconds:number
- maxSizeInK:number
- modifyClientEvent()
- modifyDataChanged()
- modifyPagedQuery()
- modifyPublishEvent()
- modifyResourceEvent()
- modifyServiceEvent()
- modifySourceEvent()
- modifyTimedQuery()
- name:string
- navBarBackgroundColor
- navBarForegroundColor
- navBarIcon
- navBarIconHeight
- navBarIconWidth
- navBarShowControls
- navBarTitle
- navBarTitleFontFamily
- navBarTitleFontSize
- navBarTitleFontWeight
- openIcon:string
- optional:boolean
- overrideLocale
- Page
- patch()
- placeholder:string
- playAudio()
- playVideo()
- popupPage()
- publish()
- publish()
- publishToServiceEvent()
- query()
- recordAudio()
- recordVideo()
- remove():void
- responseObject:any
- restart():void
- returnToCallingPage()
- scanBarcode()
- select()
- select()
- selectOne()
- selectOne()
- sendClientEvent()
- sendLocation()
- setInterval()
- setResponseObject(responseObject:any=null, responseResource:string=null, responseResourceId:string=null):void
- setResponseObjectValues(submitValue:number, responseObjectValues:any, responseResource:string=null, responseResourceId:string=null):void
- setTimeout()
- setVantiqHeaders()
- setVantiqUrlForResource()
- setVantiqUrlForSystemResource()
- showDocument()
- showHttpErrors()
- showMap()
- speakText()
- start(completedFunction:Function):boolean
- startBLEScan()
- stopGeofencing()
- takePhoto()
- terminate()
- terminateWithDialog()
- title:string
- titleForegroundColor:string
- update()
- update()
- uploadDataURL()
- uploadDocument()
- Uploader
- upsert()
- upsert()
- uuid:string
- validate()
- validate()
- Widget Hierarchy
- Show Remaining Articles ( 172 ) Collapse Articles
-
-
-
- Accessing Namespaces in the Organization
- Active Resource Control Center
- Adding a New User to an Organization
- Adding a New User to the Application Namespace
- Administrators' Concepts and Terminology
- Authorizing Users to Access the Application
- Creating a Developer Namespace for the Organization Administrator
- Creating a New Application Namespace
- Creating Resources for New Namespaces
- Custom User Invites
- Deploying the GenAI Flow Service Connector
- Developer Tasks
- Handling Administrators Leaving
- Related Configuration
- Removing Namespace Administrators
- Self-Administration Tasks
- System Administration Tasks
- Viewing Lists of Users
- Show Remaining Articles ( 3 ) Collapse Articles
-
- Deploy Results Tab
- Deploying the same application to different environments
- Deployment
- Deployment Tool - Introduction
- Environment
- Environment Tab
- Node
- Project Partitions
- Redeploy On A Failed Node
- Reliable Deployment
- Settings Tab
- The Graph View
- The Tree View
- Undeploy
- Update Partitions
- Verify Application After Deployment
- Show Remaining Articles ( 1 ) Collapse Articles
-
- CheckedInsert/CheckedUpsert Command
- Command Line Options
- Delete Command
- Execute Command
- Export Command
- Find Command
- Help Command
- Import Command
- Insert Command
- Installation - Prerequisites
- Installation - Profile
- List Command
- Load Command
- Recommend Command
- Run Command
- Select Command
- Stop Command
- The Vantiq Command Line Interface (CLI) - Overview
- Upsert Command
- Show Remaining Articles ( 4 ) Collapse Articles
-
- App Execution Dashboard
- App With Split Dashboard
- Dashboard Navigation Bar
- Deprecated Dashboards
- Event Processing Dashboard
- General Dashboard Behavior
- Getting Started with Grafana
- Grafana Usage
- Monitoring Namespaces with Grafana
- Most Commonly Used Dashboards
- Namespace Monitoring Dashboards
- Organization Level Behavior
- Procedure and Rule Execution Dashboards
- Profiling Dashboards
- Reliable Event Dashboard
- Resource Usage Dashboard
- Service Execution Dashboard
- Service Handler Dashboard
- Source Activity Dashboard
- Storage Manager Dashboard
- Tensorflow Model Dashboard
- Type Storage Dashboard
- Show Remaining Articles ( 7 ) Collapse Articles
-
- Access to a Kubernetes Cluster
- Creating a K8s Cluster
- Delayed Processing
- Deploying K8s Installations to a Kubernetes Cluster
- Deploying the K8s Worker
- External Lifecycle Management Guide - Overview
- K8s Worker
- Kubernetes Components of a K8s Installation
- Kubernetes Namespaces
- Loading Images into a Kubernetes Cluster
- Managing K8s Installations
- Other Configuration Options
- System View
- Use of the self Cluster
- Using a Kubernetes Cluster
- Using Templates to Deploy the K8s Worker
- Vantiq Namespaces
- Verify Installation
- Show Remaining Articles ( 3 ) Collapse Articles
-
- Changing the System Password
- Creating a GenAIFlowService Service Connector
- Creating a New Organization and Namespace
- Deployment Methods
- Docker Deployment
- Edge Installation Management
- Edge Vision Server
- Executable JAR Deployment
- MongoDB
- Requirements
- Running the Vantiq Executable
- Setting the default LLMs API key
- Setting Up Vantiq Edge
- Vantiq Edge Reference Guide - Overview
- Vantiq Edge Self Node
- Windows bat file
- Show Remaining Articles ( 1 ) Collapse Articles
-
- Additional Buffer Semantics
- Applicability
- auditFrequency Quota
- Background
- Default Quotas
- Detailed Credit Quotas
- errorBreaker Quota
- errorReportingFrequency Quota
- Execution Credit Quota
- Execution Credit Quota - Diagnostics
- Execution Credit Quota - Mitigation
- Execution Rate Quota
- Execution Rate Quota - Diagnostics
- Execution Rate Quota - Mitigations
- executionTime Quota
- k8sResources Quota
- Quota Interactions
- receiveMessage Quota
- receiveMessage Quota - Diagnostics
- receiveMessage Quota - Mitigation
- reservedGroups Quota
- stackDepth Quota
- Stream Quota
- Terminology
- Workload Management
- Workload Management Conceptual Model
- Show Remaining Articles ( 11 ) Collapse Articles
-
-
-
- Android Post-Installation Instructions
- Authentication Functions
- Database Functions
- Installation Instructions
- iOS Post-Installation Instructions
- Miscellaneous Functions
- Prerequisites
- Procedure Execution Functions
- Publishing Functions
- Sample iOS AppDelegate.m File
- User Creation Functions
- Vantiq Functionality for React Native Apps
-
-
- Accumulate State
- Analytics
- Answer Question
- App Activity Tasks
- App Builder Guide - Introduction
- App Builder Overview
- Assign
- Build and Predict Path
- Cached Enrich
- Chat
- Close Collaboration
- Collaborations in Apps
- Compute Statistics
- Convert Coordinates
- Creating an App
- DBScan
- Delay
- Dependency Management
- Dwell
- Enrich
- Error Handling
- Escalate
- EscalateState
- Establish Collaboration
- Event Redelivery
- Event Stream
- Filter
- GenAI Flow
- Get Collaboration
- Interpret Conversational Language
- Join
- K-Means Cluster
- Limit
- Linear Regression
- Log Stream
- Loop While
- Merge
- Notify
- Optional Imports
- Polynomial Fitter
- Predict Paths By Age
- Procedure
- Process Intent
- PublishToService
- PublishToSource
- PublishToTopic
- Rate
- Recommend
- RecordEvent
- Reliable Apps
- Run TensorFlow Model On Document
- Run TensorFlow Model On Image
- Run TensorFlow Model On Tensors
- Sample
- SaveToType
- Split By Group
- Submit Prompt
- Threshold
- Time Difference
- Track
- Track Motion
- Tracking Progress
- Transformation
- Unwind
- VAIL
- VisionScript
- Window
- Within Tracking Region
- YOLO From Images
- Show Remaining Articles ( 54 ) Collapse Articles
-
-
-
- Broker Service
- Catalog Operations
- Catalog Procedures
- Connect to Catalog
- Create Entry
- Create Entry
- Custom Operations
- Disconnect from Catalog
- Host Catalog
- Integrating Applications With the Catalog
- Managing Catalog
- Managing Event Types
- Publisher Service
- Register
- Remove Entry
- Repair Catalog
- Resolve
- Subscriber Service
- Unhost Catalog
- Unregister
- Utilities
- Show Remaining Articles ( 6 ) Collapse Articles
-
-
-
- Advanced Use Cases
- Data Manipulation
- Defining Types
- Discovery from External Data Store
- Error Handling
- Installation and Use
- Native Language Implementation
- Restricting Capabilities
- Service Connectors
- Storage Manager Assembly Contents
- Storage Manager Service API
- Storage Manager Transactions
- Storage Managers - Introduction
- Transaction Support
-
-
-
- App Pane
- Autopsies
- Defining a Run Policy
- Defining a Test Suite - Properties
- Defining an Input
- Defining an Output
- Error Pane
- Integration Tests
- Populate Testing Namespace With Data
- Procedure Pane
- Rule Pane
- Running a Test in the IDE
- Running a Test through the REST Interface
- Source Mocking For Tests
- Unit Tests
- Vantiq Testing Reference Guide - Introduction
- Show Remaining Articles ( 1 ) Collapse Articles
-
-
-
- Assign
- Branch
- Categorize
- CodeBlock
- Consensus
- Content Ingestion Flows
- Conversation
- GenAI Builder Guide Introduction
- GenAI Builder Layout
- GenAI Components
- GenAI Flow Properties
- GenAI Flow Tracing and Auditing
- Launching the GenAI Builder
- LLM
- Memory and Conversations
- Merging Task Outputs
- NativeLCEL
- Optional
- PromptFromTemplate
- RAG
- Repeat
- Runtime Configuration
- Semantic Index
- Sub-Flows
- Supported VAIL Language Features
- Using GenAI Components
- Vantiq Provided GenAI Components
- Show Remaining Articles ( 12 ) Collapse Articles
-
- AWS
- Azure OpenAI
- Bedrock
- Configuration
- Function Authorizer
- Gemini
- LLM Playground
- Main Chatting Area
- Navigation Panel
- NVIDIA NIM
- OpenAI
- SageMaker
- Settings Panel
- Testing Semantic Index
- Tool Authorizer
- Tools
- Show Remaining Articles ( 1 ) Collapse Articles
-
-
-
-
- Assembly Configs
- Audits
- Catalog Members
- Catalogs
- Debug Configs
- Delegated Requests
- Documents
- Event Generators
- Groups
- Images
- K8s Clusters
- K8s Installations
- K8s Workitems
- LLMs
- Logs
- Namespaces
- Nodes
- Organizations
- Procedures
- Profiles
- Projects
- Resource Definition
- Resource Events
- Resource Relationship Model
- Resource Security Model
- Rules
- Scheduled Events
- Secrets
- Semantic Indexes
- Service Connectors
- Services
- Sources
- StorageManagers
- TensorFlowModels
- Test Reports
- Test Suites
- Tests
- Tokens
- Topics
- TrackingRegions
- Types
- Users
- Vantiq Resources
- Videos
- Show Remaining Articles ( 29 ) Collapse Articles
-
- Before Rules
- Built-In Services
- Data Manipulation
- Data Model Declarations
- Declaring Packages
- Defining Remote Connections
- Distributed Processing
- Error Handling
- Event Sending
- External State
- Flow Control
- General Use Procedures
- In-Memory State Management
- Iteration
- Logging
- Operators
- Package Scoping and Name Resolution
- Packages
- Packages
- Persistent State
- Procedure Execution
- Procedures
- PROCESSED BY Clause
- Resource Definition
- RETURN
- Rules
- Services
- Syntax
- Type Specific Procedures
- VAIL Declarations
- VAIL Types
- Variables
- Show Remaining Articles ( 17 ) Collapse Articles
-
-
-
Articles
-
- How To Video Shorts: Client Layouts
- How To Video Shorts: AI Functions
- How To Video Shorts: Analytics and ComputeStatistics
- How To Video Shorts: Calling Procedures by Properties
- How To Video Shorts: Client CSS
- How To Video Shorts: Invite Other Users to Your Namespace
- How To Video Shorts: SplitByGroup
- How To Video Shorts: The Vantiq API
- How To Video Shorts: The Vantiq IDE
- How To Video Shorts: The Vantiq Version Control System
- How To Video Shorts: Using Generative AI in Applications
- How-To Video Shorts: Managing AI Conversations
- How-To Videos: AI Design Model Assistant
- How-To Videos: AI Documentation Search
- Production Applications Best Practices