Gabion is built to work with AI assistants and agents, but it must not
impose a single method of data processing.
For every client project, the permitted models, the permitted context,
the external providers, and the costs are determined separately.
Choosing an AI model
Depending on the actual compatibility, Gabion can work:
- with an external cloud model;
- with several permitted providers;
- with a model in the client's account;
- with a model running locally;
- without sending a particular task to an external model;
- with different models for different classes of task.
The technical ability to connect a model does not mean it is
automatically permitted for the client's material.
For the project it is necessary to determine:
- which models are supported;
- which models the client permits;
- who creates the provider account;
- who accepts the provider's terms;
- who pays for the usage;
- which limits apply to the data;
- which Gabion features are available with the model chosen;
- whether the model can be replaced without changing the project.
An external cloud model
Before an external provider is used, the parties determine:
- which material may be sent to it;
- whether source code may be sent;
- whether logs may be sent;
- whether the data schema may be sent;
- whether the contents of the database may be sent;
- whether personal data may be sent;
- whether secrets may be sent;
- where the material is processed;
- how long it is retained;
- whether it is used for training;
- which data-control settings are available;
- which subprocessors are involved;
- which logs are kept.
If a provider does not meet the client's mandatory requirements, its
model is not used for the material concerned.
A local model
A local model can reduce the volume of data sent to an external provider,
but it does not automatically eliminate every risk.
It is necessary to verify:
- the actual compatibility with Gabion;
- the computing resources required;
- the supported interaction format;
- the quality of task execution;
- the size of the context window;
- the speed;
- the update requirements;
- the logging;
- access by other users of the machine;
- how the model is stored;
- the network connections of the runtime used.
Running locally does not make a weak model equivalent to a stronger cloud
model.
The Gabion architectural checks reduce the impact of some AI errors, but
they do not guarantee the same result from every model.
Quantized models
A quantized model can be used if it is compatible with the scenario
chosen and shows sufficient quality on real tasks from the project.
Before it is used, it is necessary to verify:
- its understanding of the project structure;
- its ability to perform multi-file changes;
- its adherence to instructions;
- its work with Java and TypeScript;
- the quality of its migrations;
- its response to diagnostics;
- the stability of its tool calls;
- the frequency of erroneous changes;
- its memory requirements;
- its speed.
Support must not be promised for any local or quantized model merely
because it offers a compatible API.
The minimum necessary context
The AI has to receive only the context necessary for the specific task.
The context may include
- the files relevant to the task;
- the permitted contracts;
- the structure of the project;
- the diagnostics;
- the tests;
- a technical description of the scenario;
- anonymized data samples.
The following should not be sent unless necessary
- the whole repository;
- the whole database;
- production secrets;
- personal data;
- financial documents;
- internal correspondence;
- credentials;
- files from other projects;
- the internal Pikiner module storage.
MCP and the agent environment have to restrict the area of access in
accordance with the task and the project settings.
The client's source code
The project code is used only for work on that project, within the agreed
process.
Pikiner must not:
- migrate unique code into another client project;
- publish the client's code;
- use it in the public Showcase;
- add it to the internal module storage;
- send it to an external provider outside a permitted mode;
-
use it to train a shared model without a separate, explicit agreement.
The terms of code processing have to match across the contract, the
Privacy Policy, the DPA, and the settings of the providers used.
The client's data
For development it is preferable to use:
- synthetic data sets;
- anonymized data;
- minimal samples;
- test accounts;
- a separate test environment.
Production data is used only where necessary and in the agreed volume.
Before data is transferred, the following are determined:
- the purpose;
- the contents;
- the storage location;
- the permitted recipients;
- the permitted models;
- the retention period;
- the deletion method;
- the logging requirements;
- whether a DPA is required.
Secrets are not considered permissible AI context.
Shared Pikiner modules
When a shared module is created from a solution that a client project
needed, Pikiner has to separate the reusable technical mechanism from the
client's material.
The following must not be migrated into a module:
- the client's data;
- the client's name;
- the name of the product;
- unique business logic;
- confidential calculations;
- secrets;
- internal identifiers;
- client documents;
- fragments of the client's old code;
- test data that makes the client identifiable.
Only an anonymized shared component enters the Pikiner storage.
The unique implementation stays in the client's project directory.
The cost of models and external services
The price of the migration and of the Gabion license must not
automatically include unlimited third-party provider costs.
The following can be separate costs:
- external LLM tokens;
- compute for a local model;
- GPU;
- storage;
- paid APIs;
- external embeddings;
- model hosting;
- third-party observability;
- other licenses.
Before use begins it has to be clear:
- who creates the account;
- who receives the invoice;
- which limits are set;
- whether a budget cap can be set;
- who has the right to change a limit;
- which notifications are available;
- what happens when the budget is exhausted.
Where possible, third-party accounts are registered to the client.
Cost control
For a supported integration it is useful to display:
- the model chosen;
- the number of requests;
- the measured usage;
- the estimated cost;
- the limit set;
- provider errors;
- switching the model, if that is permitted.
An exact monetary calculation must not be promised if the provider does
not supply sufficient data or changes prices independently of Pikiner.
Gabion Live Showcase recordings
A Gabion Live Showcase uses a prepared Pikiner project, not the client's
product.
Without separate written permission, a demonstration must not include:
- the client's screen;
- the client's code;
- the client's data;
- the client's name;
- architecture that makes the client identifiable;
- a recording of the first meeting;
- questions that disclose confidential information.
What has to be fixed before the work starts
A clear matrix has to exist for the project:
This is a project decision form, not a list of settings Gabion ships
with.
| Question |
Project decision |
| Permitted models |
Specify |
| External providers |
Specify |
| Whether code may be sent |
Yes / no / with restrictions |
| Whether user data is permitted |
Yes / no / with restrictions |
| Whether a local model is required |
Specify |
| Who owns the accounts |
Specify |
| Who pays for the usage |
Specify |
| Spending limit |
Specify |
| Retention period |
Specify |
| Whether a DPA is required |
Specify |
| Whether logging is permitted |
Specify |
| Deletion procedure |
Specify |
This matrix is a project decision, not a universal Gabion setting for all
clients.
Gabion manages the technical process. The client determines which models
and which data are permitted to take part in it.
More on Models and Data