Integrazione semplice dell’app GenAI utilizzando l’API di Segmind e Postman

Integrazione fluida dell'app GenAI tramite l'API di Segmind e Postman

Introduzione

L’integrazione dell’Intelligenza Artificiale (AI) nelle nostre applicazioni sta diventando sempre più necessaria per rimanere competitivi nel mondo degli affari. L’aggiunta di queste funzionalità AI migliora l’esperienza degli utenti, automatizza le attività e fornisce informazioni preziose. Ci sono molte possibilità poiché sono disponibili diversi modelli GenAI. Tuttavia, l’integrazione dell’AI nella tua app può essere complessa. Soprattutto con la nuova tendenza di GenAI, dove molti processi sono ancora in fase di sperimentazione. Quindi, se vuoi vedere come puoi integrare GenAI nella tua app personale o nel software, come ad esempio un’app di moda, questo articolo mira a semplificare il processo integrando l’integrazione dell’app GenAI utilizzando l’API Segmind e Postman.

Obiettivi di apprendimento

  • Comprensione dei modelli e delle API di Segmind
  • Comprensione dell’API di integrazione GenAI con Segmind
  • Utilizzo di Postman con l’API di Segmind

Questo articolo è stato pubblicato come parte del Data Science Blogathon.

Comprensione dell’API del modello Segmind

Per comprendere appieno l’API GenAI di Segmind, è necessario capirne lo scopo, le capacità e i vantaggi. Alcuni casi d’uso potenziali da evidenziare includono il riconoscimento delle immagini per le app di e-commerce, il design della moda, l’animazione, la rimozione dello sfondo, le opere d’arte, la pittura, i fumetti, ecc. Oltre alla facilità d’uso, Segmind AI fornisce modelli GenAI disponibili tramite l’API e il playground sul sito web su https://www.segmind.com/models. In questo articolo, useremo chiamate di inferenza API. È facile selezionare un modello adatto alle tue attività con uno script API disponibile. Di seguito è riportato un esempio di modello Medium Diffusion 1.5 Outpainting disponibile su https://www.segmind.com/models/md1.5-outpaint/api.

import requestsfrom base64 import b64encodedef toB64(imgUrl):    return str(b64encode(requests.get(imgUrl).content))[2:-1]api_key = "YOUR API-KEY"url = "https://api.segmind.com/v1/md1.5-outpaint"# Payload della richiesta data = {  "image": toB64('https://www.segmind.com/image5.png'),  "prompt": "strade in Italia",  "negative_prompt": "NESSUNO",  "scheduler": "DDIM",  "num_inference_steps": 25,  "img_width": 1024,  "img_height": 1024,  "scale": 1,  "strength": 1,  "offset_x": 256,  "offset_y": 256,  "guidance_scale": 7.5,  "mask_expand": 8,  "seed": 124567}response = requests.post(url, json=data, headers={'x-api-key': api_key})print(response)

Iscrizione a Segmind AI

La bellezza di Segmind è che offrono l’opzione di utilizzarlo con prompt gratuiti e hanno inferenze a pagamento molto convenienti per le chiamate API. Questo richiede un’iscrizione per avere accesso alla generazione di chiavi API. Puoi ottenere un’API completamente gratuita con alcune limitazioni per provarla. Tieni presente che gli account gratuiti ottengono 100 chiamate API gratuite al giorno. Puoi consultare la loro pagina dei prezzi se hai bisogno di più chiamate API. Soprattutto se integri un modello nella tua app personale per garantire un flusso gratuito.

Il processo di registrazione richiede solo alcuni clic utilizzando un indirizzo email valido. Una volta registrato, vedrai la pagina di destinazione qui sotto:

Hai bisogno di una chiave del profilo. Clicca sul pulsante “Crea nuova chiave API”. Se non trovi questa opzione per creare una chiave dopo la registrazione, vai su https://cloud.segmind.com/ e accedi al tuo dashboard. Devi impostare il numero di giorni per la scadenza della tua nuova API. In caso di mancata impostazione, verrà utilizzata una durata predefinita. Per questo tutorial, ho impostato la mia a 7 giorni. Fai clic su “Conferma” e continua.

Dopo aver generato la tua chiave API, individua il modello che utilizzeremo su https://www.segmind.com/models/sd1.5-revanimated/api nota che utilizzeremo l’API per questo tutorial, ma vai avanti e gioca con il playground e vedi come funziona.

Preparazione di Postman

Ora che ti sei registrato su Segmind e hai generato una chiave API, passiamo al processo di configurazione di Postman. Postman è uno strumento perfetto poiché rende il processo facile. Vai su https://www.postman.com/. Iscriviti e dovresti trovare la pagina di accesso qui sotto.

Passaggio I: Creare uno Spazio di lavoro

Nella parte superiore a sinistra, dovresti vedere l’intestazione contenente “Spazio di lavoro”. Selezionalo e seleziona “Crea spazio di lavoro” per aggiungere un nuovo spazio di lavoro. Vedrai il pulsante “Avanti” in basso a sinistra. Selezionalo per continuare. Compila le informazioni e clicca su Crea. Il nome del mio spazio di lavoro è Segmind Demo. Aspetta che venga creato il tuo nuovo spazio di lavoro.

Spazio di lavoro

Passaggio II: Creare una Collezione

La cosa successiva da fare è creare collezioni. Seleziona il pulsante collezioni a sinistra e dai un nome. Io lo chiamo ‘revanimated’ poiché è il modello su cui farò una dimostrazione. Ora dobbiamo creare una richiesta.

Passaggio III: Creare una Richiesta

Ora, questo è un aspetto da tenere a mente per evitare errori. Ogni API ha le sue specifiche, comprese le API dei modelli Segmind. Una cosa da notare è che i modelli utilizzano un token di richiesta API con un’intestazione x-api-key su tutte le interrogazioni API. Vedremo questo tra un momento.

Il valore predefinito è “GET”, ma cambiato in “POST”. La cosa successiva, oltre a POST, è un URL.

Collegare Postman all’API Segmind

Un obiettivo di progettazione di Segmind è concentrarsi sulla semplicità e sulla facilità. Tutti gli URL (endpoint) seguono uno schema simile a https://api.segmind.com/v1/{endpoint}. Sostituisci le parentesi graffe con il nome del modello. Non è necessario memorizzare tutto questo poiché è disponibile in ogni modello su https://www.segmind.com/models. Ora vediamo il modello su cui stiamo facendo la dimostrazione.

import requestsapi_key = "LA TUA CHIAVE API"url = "https://api.segmind.com/v1/sd1.5-revanimated"# Caricare il payload della richiestadata = {  "prompt": "aeromobile avanzato, gundam, robot nero scuro, astronave, lungo, pistole giganti, design futuristico, fantascienza, nello spazio, supernova, stelle, pianeti, (8k, foto RAW, migliore qualità, ultra alta risoluzione, fotorealismo, capolavoro, ultra-dettagliato, Unreal Engine), migliore qualità, guerriero, ((look cinematografico)), dettagli insani, arma avanzata, combattimento, battaglia, epico, potere, combattimento, sparare, sparare, missili, bombe, esplosioni, razzi, jetpack, difesa, attacco, grandangolo",  "negative_prompt": "noioso, disegnato male, cattivo artista, (peggiore qualità: 1.4), sfondo semplice, non ispirato, (cattiva qualità: 1.4), monocromatico, basso contrasto dello sfondo, rumore di fondo, duplicato, affollato, (capezzoli: 1.2), seni grandi",  "samples": 1,  "scheduler": "ddim",  "num_inference_steps": 25,  "guidance_scale": 9,  "seed": 3426017487234,  "img_width": 512,  "img_height": 768,  "base64": False}response = requests.post(url, json=data, headers={'x-api-key': api_key})print(response)

Puoi trovare lo script sopra nella scheda API sulla pagina del modello che utilizziamo: https://www.segmind.com/models/sd1.5-revanimated/api. Puoi scegliere tra Python, bash o Javascript. Lo script sopra è in Python.

I due seguenti verranno utilizzati per la nostra chiamata API.

api_key = "YOUR API-KEY"url = "https://api.segmind.com/v1/sd1.5-revanimated"

Tornando a Postman, copia l’URL sopra (https://api.segmind.com/v1/sd1.5-revanimated) e incollalo nello spazio URL accanto a POST.

Autorizzazione API

Prima di procedere, vediamo le migliori pratiche di sicurezza per proteggere le tue credenziali API:

  • Archivia le tue chiavi API e token in un luogo sicuro, come variabili d’ambiente o un servizio dedicato di gestione delle credenziali.
  • Non esporre mai le tue credenziali API in repository pubblici o condividerle in chiaro. Utilizza strumenti come file di ambiente o gestione delle credenziali per mantenerle riservate.
  • Fornisci l’accesso alle chiavi API e ai token solo ai membri del team che ne hanno bisogno. Implementa controlli di accesso basati sui ruoli quando possibile.
  • Ruota regolarmente le tue chiavi API e i token per ridurre al minimo il rischio di accessi non autorizzati.
  • Implementa meccanismi di monitoraggio e audit per tracciare l’utilizzo delle API e rilevare tempestivamente attività sospette.

Ora, seleziona la scheda “Autorizzazione” e fai clic sul menu a tendina dopo “Tipo” e seleziona “API Key”.

Ora, completa i dettagli sulla chiave API che desideri utilizzare. Per la Chiave, inserisci x-api-key, copia la chiave API che hai creato o creane una nuova e incollala nel campo dei valori. Lascia “Da aggiungere” impostato su header.

Impostazione degli Header

Per l’header, devi fornire una chiave e un valore. Per la chiave, seleziona “Content-Type”, e il valore dovrebbe essere “application/json” come mostrato di seguito.

Impostazione del Body dell’API

Il body è la cosa più interessante. Qui devi fornire il tuo prompt!

Prima di procedere, comprendi i limiti degli account API gratuiti. È essenziale gestire le tue aspettative quando utilizzi un account API gratuito. Sebbene offra un’ottima opportunità di esplorazione, ci sono dei limiti da considerare, come i limiti di velocità per le richieste API. Questi limiti possono influire sul volume e sulla velocità delle richieste API che puoi effettuare. Per sfruttare al massimo GenAI nelle applicazioni ad alta domanda, considera l’aggiornamento a un piano premium per accedere a limiti di velocità più elevati e funzionalità aggiuntive da Segmind.

Crea un rendering 3D intricato e sorprendente di una battaglia spaziale futuristica tra aerei avanzati e robot neri oscuri, con un'esplosione di supernova affascinante. La scena dovrebbe presentare fucili e astronavi lunghe e giganti con un design ultra dettagliato e fotorealistico. Le astronavi dovrebbero essere armate con armi come missili, bombe, razzi e jetpack, impegnate in un combattimento epico, sparando e difendendosi dai robot minacciosi. La vista grandangolare dovrebbe catturare la battaglia, enfatizzando la potenza e la sofisticazione dei guerrieri. Il look cinematografico dovrebbe aggiungere drammaticità alla scena, rendendola un capolavoro indimenticabile di arte sci-fi.

Puoi impostare altri parametri come seed, scheduler, ecc. Di seguito è riportato lo snippet di quello che ho usato.

"samples":1,"scheduler":"ddim","num_inference_steps":25,"guidance_scale":9,"seed":7567182154,"img_width":512,"img_height":768,"base64":false

Sotto il body, seleziona ‘raw’ e racchiudi tutti i parametri sopra come coppie chiave-valore tra parentesi graffe nel body della richiesta.

Fai clic su Invia per creare una richiesta. Questo dovrebbe mostrare l’immagine di output generata. Puoi cambiarlo in “invia e scarica” per scaricare una copia dell’immagine generata.

Ora puoi procedere con l’integrazione nella tua app locale. Puoi passare a un modello a tua scelta e seguire lo stesso processo.

Esempi concreti per GenAI

Prima di concludere, esploriamo alcuni scenari reali in cui i modelli GenAI possono migliorare l’esperienza dell’utente:

  1. E-commerce: I modelli GenAI possono migliorare i sistemi di raccomandazione dei prodotti, aiutando gli utenti a scoprire prodotti personalizzati in base alle loro preferenze e alla cronologia di navigazione.
  2. Creazione di contenuti: I modelli di generazione di contenuti possono aiutare i creatori di contenuti generando testo per articoli, post di blog o post sui social media, risparmiando tempo e aumentando la produttività.
  3. Sanità: GenAI può aiutare i professionisti medici analizzando immagini mediche per una diagnosi e una pianificazione del trattamento più veloci e accurate.
  4. Gaming: Nell’industria dei videogiochi, l’IA può migliorare le animazioni dei personaggi, generare paesaggi realistici e adattare addirittura il gameplay in base alle azioni del giocatore, offrendo esperienze più coinvolgenti.

Sfide e migliori pratiche

Ottimizzare l’utilizzo dei modelli GenAI nelle applicazioni può presentare delle sfide. Alcune delle sfide potenziali comprendono la gestione di grandi volumi di dati, la gestione efficace dei limiti di velocità e assicurarsi che la tua applicazione rimanga reattiva anche durante l’elaborazione dell’IA. Le migliori pratiche per superare queste sfide includono:

  • Memorizzazione nella cache dei risultati: Memorizza le risposte dell’IA nella cache quando applicabile per ridurre le chiamate API ridondanti e migliorare i tempi di risposta.
  • Bilanciamento del carico: Distribuisci le richieste dell’IA su più server o istanze per evitare sovraccarichi su un singolo server.
  • Monitoraggio dei limiti di velocità: Implementa un monitoraggio dei limiti di velocità per regolare dinamicamente le richieste API in base allo stato dei limiti di velocità corrente.
  • Gestione dei dati: Gestisci ed elabora i dati in modo efficiente per assicurarti che si conformino ai requisiti di input dei modelli GenAI, ottimizzando il processo di integrazione dell’IA.

Conclusione

Abbiamo visto una chiara comprensione dell’API di Segmind GenAI, il potere di Postman e il processo di integrazione accurato. Ciò può migliorare le tue applicazioni con l’IA, con un’esperienza utente migliorata e rimanendo competitivi nel panorama tecnologico moderno. Affrontando le sfide e implementando queste migliori pratiche, puoi assicurarti che l’integrazione di GenAI rimanga efficiente e affidabile nella tua applicazione. Ora hai una solida comprensione dell’API, delle pratiche di sicurezza, dei limiti degli account gratuiti, delle applicazioni reali e delle strategie di ottimizzazione.

Punti chiave

  • L’integrazione semplificata di GenAI con un’applicazione è resa facile tramite l’API di Segmind e Postman.
  • L’API di Segmind sfrutta potenti capacità di intelligenza artificiale senza una configurazione complessa.
  • Postman è uno strumento versatile per testare ed integrare API, permettendoti di creare, inviare e analizzare facilmente le API.

Domande frequenti

Riferimenti

I media mostrati in questo articolo non sono di proprietà di Analytics Vidhya e sono utilizzati a discrezione dell’autore.