Documentation
Démarrage rapide
De la demande au premier appel : l’équipe HubMix configure votre application et vous remet votre clé, vous installez le widget ou un SDK.
Cinq étapes, de la demande à la première réponse de Gaspard. Choisissez votre plateforme dans les onglets : chaque exemple fonctionne tel quel. Les autres produits du hub (tuteur, Confiance, embeddings, recherche) suivent les mêmes étapes : seule la route change.
1. Faites votre demande #
Remplissez le formulaire Demander un assistant IA : votre site ou votre application, ce que Gaspard doit faire. Il n’y a pas de compte à créer : un correspondant de l’équipe HubMix prend contact avec vous.
2. Recevez votre clé #
L’équipe HubMix crée votre application, active ses produits (par défaut : Gaspard et la recherche), configure Gaspard pour votre site et vous remet sa clé :
- une clé secrète
vck_live_…si c’est votre backend qui appelle le hub (Laravel, Node.js, .NET…), valable pour tous les produits de l’application ; - une clé publiable
vcp_live_…si l’appel part d’un navigateur ou d’une application mobile, liée aux origines de votre site (https://www.mon-site.org), pour Gaspard et la recherche.
Rangez la clé aussitôt dans votre gestionnaire de secrets ou votre fichier .env.
GASPARD_API_KEY=vck_live_xxxxxxxxxxxxxxxx3. Installez le SDK #
npm install @valais-connect/gaspardcomposer require valais-connect/gasparddotnet add package ValaisConnect.Gaspardflutter pub add valais_connect_gaspardimplementation("ch.valais-connect:gaspard:1.0.0")4. Posez votre première question #
import { Gaspard } from '@valais-connect/gaspard';
const gaspard = new Gaspard({ apiKey: process.env.GASPARD_API_KEY! });
const conversation = await gaspard.startConversation('fr');
const answer = await gaspard.ask(conversation.id, 'Que faire à Lyon ce week-end ?');
console.log(answer.text);
console.log(answer.sources.map((source) => source.name));use ValaisConnect\Gaspard\Gaspard;
$gaspard = new Gaspard(apiKey: getenv('GASPARD_API_KEY'));
$conversation = $gaspard->startConversation(locale: 'fr');
$answer = $gaspard->ask($conversation->id, 'Que faire à Lyon ce week-end ?');
echo $answer->text;using ValaisConnect.Gaspard;
var gaspard = new GaspardClient(new GaspardOptions
{
ApiKey = Environment.GetEnvironmentVariable("GASPARD_API_KEY"),
});
var conversation = await gaspard.StartConversationAsync("fr");
var answer = await gaspard.AskAsync(conversation.Id, "Que faire à Lyon ce week-end ?");
Console.WriteLine(answer.Text);import 'dart:io';
import 'package:valais_connect_gaspard/valais_connect_gaspard.dart';
final gaspard = GaspardClient(apiKey: Platform.environment['GASPARD_API_KEY']);
final conversation = await gaspard.startConversation(locale: 'fr');
final answer = await gaspard.ask(conversation.id, 'Que faire à Lyon ce week-end ?');
print(answer.text);val gaspard = GaspardClient { apiKey = System.getenv("GASPARD_API_KEY") }
val conversation = gaspard.startConversation(locale = "fr")
val answer = gaspard.ask(conversation.id, "Que faire à Lyon ce week-end ?")
println(answer.text)# 1. Une conversation
curl https://hubmix.dealmood-solutions.com/v1/public/gaspard/conversations \
-H "Authorization: Bearer $GASPARD_API_KEY" \
-H "Content-Type: application/json" \
-d '{"locale": "fr"}'
# → {"id": "cnv_…", "remaining_messages": 60, …}
# 2. Une question
curl https://hubmix.dealmood-solutions.com/v1/public/gaspard/conversations/cnv_…/messages \
-H "Authorization: Bearer $GASPARD_API_KEY" \
-H "Content-Type: application/json" \
-d '{"text": "Que faire à Lyon ce week-end ?"}'La réponse contient le texte (text), les sources (sources), les pages de l’app Valais Connect
utiles (pages), les annonces trouvées (listings) et le nombre de messages encore possibles
dans la conversation (remaining_messages, 60 au départ).
5. Affichez la réponse en direct #
Pour un vrai effet « chat », lisez la réponse au fil de l’écriture :
let text = '';
for await (const event of gaspard.askStream(conversation.id, 'Et dimanche ?')) {
if (event.type === 'delta') {
text += event.text; // un morceau de la réponse
render(text);
} else {
showSources(event.answer.sources, event.answer.listings);
}
}Tout sur le flux : Réponses en flux.
Juste un site ? Le widget suffit #
Avec une clé widget, collez ces deux lignes avant </body> : Gaspard apparaît en bas à droite,
avec l’avis de confidentialité, le consentement et les réponses en flux déjà gérés.
<script src="https://hubmix.dealmood-solutions.com/widget/gaspard.js" defer></script>
<gaspard-assistant data-key="vcp_live_…" data-locale="fr"></gaspard-assistant>Options et API JavaScript : Le widget.