L'ascesa del testo e ricerca semantica motori ha reso più facile la ricerca delle attività di e-commerce e vendita al dettaglio per i suoi consumatori. I motori di ricerca basati su testo e immagini unificati possono fornire una maggiore flessibilità nelle soluzioni di ricerca. Puoi utilizzare sia testo che immagini come query. Ad esempio, hai una cartella di centinaia di foto di famiglia nel tuo laptop. Vuoi trovare rapidamente una foto che è stata scattata quando tu e il tuo migliore amico eravate davanti alla piscina della vostra vecchia casa. Puoi utilizzare un linguaggio conversazionale come "due persone stanno davanti a una piscina" come query per cercare in un motore di ricerca di testo e immagini unificato. Non è necessario disporre delle parole chiave giuste nei titoli delle immagini per eseguire la query.
Servizio Amazon OpenSearch ora supporta il somiglianza del coseno metrica per indici k-NN. La somiglianza del coseno misura il coseno dell'angolo tra due vettori, dove un angolo di coseno più piccolo denota una maggiore somiglianza tra i vettori. Con la somiglianza del coseno, puoi misurare l'orientamento tra due vettori, il che lo rende una buona scelta per alcune specifiche applicazioni di ricerca semantica.
Pre-Training Contrasto Linguaggio-Immagine (CLIP) è una rete neurale addestrata su una varietà di coppie di immagini e testo. La rete neurale CLIP è in grado di proiettare sia immagini che testo nella stessa spazio latente, il che significa che possono essere confrontati utilizzando una misura di somiglianza, come la somiglianza del coseno. Puoi usare CLIP per codificare le immagini o la descrizione dei tuoi prodotti in incastrie quindi archiviarli in un indice k-NN di OpenSearch Service. Quindi i tuoi clienti possono interrogare l'indice per recuperare i prodotti a cui sono interessati.
Puoi usare CLIP con Amazon Sage Maker eseguire la codifica. Inferenza serverless di Amazon SageMaker è un servizio di inferenza appositamente creato che semplifica la distribuzione e la scalabilità dei modelli di machine learning (ML). Con SageMaker, puoi distribuire serverless per sviluppo e test e poi passare a inferenza in tempo reale quando vai in produzione SageMaker serverless ti aiuta a risparmiare sui costi ridimensionando l'infrastruttura a 0 durante i periodi di inattività. Questo è perfetto per costruire un POC, dove avrai lunghi tempi di inattività tra i cicli di sviluppo. Puoi anche usare Trasformazione batch di Amazon SageMaker per ottenere inferenze da set di dati di grandi dimensioni.
In questo post dimostriamo come creare un'applicazione di ricerca utilizzando CLIP con SageMaker e OpenSearch Service. Il codice è open source ed è ospitato su GitHub.
Panoramica della soluzione
Il servizio OpenSearch fornisce la corrispondenza del testo e l'incorporamento della ricerca k-NN. Usiamo l'incorporamento della ricerca k-NN in questa soluzione. Puoi utilizzare sia l'immagine che il testo come query per cercare elementi dall'inventario. L'implementazione di questa applicazione unificata per la ricerca di immagini e testo consiste in due fasi:
- indice di riferimento k-NN – In questa fase, passi una serie di documenti corpus o immagini di prodotto attraverso un modello CLIP per codificarli in incorporamenti. Gli incorporamenti di testo e immagini sono rispettivamente rappresentazioni numeriche del corpus o delle immagini. Salva questi incorporamenti in un indice k-NN in OpenSearch Service. Il concetto alla base di k-NN è che punti dati simili esistono in stretta prossimità nello spazio di incorporamento. Ad esempio, il testo "un fiore rosso", il testo "rosa" e un'immagine di una rosa rossa sono simili, quindi questi incorporamenti di testo e immagine sono vicini l'uno all'altro nello spazio di incorporamento.
- query sull'indice k-NN – Questa è la fase di inferenza dell'applicazione. In questa fase, invii una query di ricerca di testo o una query di ricerca di immagini tramite il modello di deep learning (CLIP) da codificare come incorporamenti. Quindi, utilizzi questi incorporamenti per interrogare l'indice k-NN di riferimento memorizzato in OpenSearch Service. L'indice k-NN restituisce incorporamenti simili dallo spazio di incorporamento. Ad esempio, se passi il testo di "un fiore rosso", restituirà l'incorporamento di un'immagine di una rosa rossa come elemento simile.
La figura seguente illustra l'architettura della soluzione.
I passaggi del flusso di lavoro sono i seguenti:
- Creare un Modello SageMaker da un modello CLIP preaddestrato per l'inferenza batch e in tempo reale.
- Genera incorporamenti di immagini di prodotto utilizzando un processo di trasformazione batch di SageMaker.
- Usa SageMaker Serverless Inference per codificare l'immagine e il testo della query negli incorporamenti in tempo reale.
- Usa il Servizio di archiviazione semplice Amazon (Amazon S3) per archiviare il testo non elaborato (descrizione del prodotto) e le immagini (immagini del prodotto) e l'incorporamento di immagini generato dai processi di trasformazione batch di SageMaker.
- Utilizza OpenSearch Service come motore di ricerca per archiviare incorporamenti e trovare incorporamenti simili.
- Utilizzare una funzione di query per orchestrare la codifica della query ed eseguire una ricerca k-NN.
Usiamo Amazon Sage Maker Studio computer portatili (non mostrato nel diagramma) come ambiente di sviluppo integrato (IDE) per sviluppare la soluzione.
Configurare le risorse della soluzione
Per configurare la soluzione, completare i seguenti passaggi:
- Crea un dominio SageMaker e un profilo utente. Per le istruzioni, fare riferimento al passaggio 5 di Integrazione nel dominio Amazon SageMaker utilizzando la configurazione rapida.
- Crea un dominio del servizio OpenSearch. Per le istruzioni, vedere Creazione e gestione di domini Amazon OpenSearch Service.
Puoi anche usare un AWS CloudFormazione modello seguendo le istruzioni di GitHub per creare un dominio.
Puoi connettere Studio ad Amazon S3 da Cloud privato virtuale di Amazon (Amazon VPC) utilizzando un punto finale dell'interfaccia nel tuo VPC, invece di connetterti tramite Internet. Utilizzando un endpoint VPC di interfaccia (endpoint di interfaccia), la comunicazione tra il tuo VPC e Studio viene condotta interamente e in modo sicuro all'interno della rete AWS. Il tuo notebook Studio può connettersi a OpenSearch Service tramite un VPC privato per garantire comunicazioni sicure.
I domini del servizio OpenSearch offrono la crittografia dei dati inattivi, una funzione di sicurezza che aiuta a impedire l'accesso non autorizzato ai tuoi dati. La crittografia da nodo a nodo fornisce un ulteriore livello di sicurezza oltre alle funzionalità predefinite di OpenSearch Service. Amazon S3 applica automaticamente la crittografia lato server (SSE-S3) per ogni nuovo oggetto, a meno che non specifichi un'opzione di crittografia diversa.
Nel dominio del servizio OpenSearch, puoi allegare criteri basati sull'identità che definiscono chi può accedere a un servizio, quali azioni può eseguire e, se applicabile, le risorse su cui può eseguire tali azioni.
Codifica immagini e coppie di testo in incorporamenti
Questa sezione illustra come codificare immagini e testo negli incorporamenti. Ciò include la preparazione dei dati, la creazione di un modello SageMaker e l'esecuzione della trasformazione in batch utilizzando il modello.
Panoramica dei dati e preparazione
Puoi utilizzare un notebook SageMaker Studio con un kernel Python 3 (Data Science) per eseguire il codice di esempio.
Per questo post, utilizziamo il Set di dati di oggetti di Amazon Berkeley. Il set di dati è una raccolta di 147,702 elenchi di prodotti con metadati multilingue e 398,212 immagini di catalogo univoche. Utilizziamo solo le immagini degli articoli e i nomi degli articoli in inglese americano. Per scopi dimostrativi, utilizziamo circa 1,600 prodotti. Per ulteriori dettagli su questo set di dati, fare riferimento a README. Il set di dati è ospitato in un bucket S3 pubblico. Ci sono 16 file che includono la descrizione del prodotto e i metadati dei prodotti Amazon nel formato di listings/metadata/listings_<i>.json.gz
. Usiamo il primo file di metadati in questa demo.
Usate panda per caricare i metadati, quindi seleziona i prodotti con titoli in inglese americano dal data frame. Pandas è uno strumento di analisi e manipolazione dei dati open source basato sul linguaggio di programmazione Python. Si utilizza un attributo chiamato main_image_id
identificare un'immagine Vedere il seguente codice:
Ci sono 1,639 prodotti nel data frame. Successivamente, collega i nomi degli elementi con le immagini degli elementi corrispondenti. images/metadata/images.csv.gz
contiene metadati dell'immagine. Questo file è un file CSV compresso con gzip con le seguenti colonne: image_id
, height
, width
e path
. È possibile leggere il file dei metadati e quindi unirlo ai metadati dell'elemento. Vedere il seguente codice:
È possibile utilizzare il kernel Python 3 del notebook SageMaker Studio integrato Libreria PIL per visualizzare un'immagine di esempio dal set di dati:
Preparazione del modello
Quindi, crea un Modello SageMaker da un modello CLIP preaddestrato. Il primo passo è scaricare il file di ponderazione del modello pre-addestrato, inserirlo in un file model.tar.gz
file e caricarlo in un bucket S3. Il percorso del modello preaddestrato può essere trovato nel file repository CLIP. Usiamo un preaddestrato RESNET-50 (RN50) in questa demo. Vedere il seguente codice:
È quindi necessario fornire uno script del punto di ingresso dell'inferenza per il modello CLIP. CLIP è implementato utilizzando PyTorch, quindi usi il SageMaker PyTorch struttura. PyTorch è un framework ML open source che accelera il percorso dalla prototipazione della ricerca all'implementazione della produzione. Per informazioni sulla distribuzione di un modello PyTorch con SageMaker, fare riferimento a Distribuisci i modelli PyTorch. Il codice di inferenza accetta due variabili di ambiente: MODEL_NAME
ed ENCODE_TYPE
. Questo ci aiuta a passare facilmente da un modello CLIP all'altro. Noi usiamo ENCODE_TYPE
per specificare se vogliamo codificare un'immagine o una parte di testo. Qui, implementi il model_fn
, input_fn
, predict_fn
e output_fn
funzioni per ignorare il gestore di inferenza PyTorch predefinito. Vedi il seguente codice:
La soluzione richiede pacchetti Python aggiuntivi durante l'inferenza del modello, quindi puoi fornire a requirements.txt
file per consentire a SageMaker di installare pacchetti aggiuntivi durante l'hosting dei modelli:
Si utilizza il Classe PyTorchModel per creare un oggetto che contenga le informazioni sulla posizione Amazon S3 degli artefatti del modello e i dettagli del punto di ingresso dell'inferenza. È possibile utilizzare l'oggetto per creare processi di trasformazione batch o distribuire il modello a un endpoint per l'inferenza online. Vedere il seguente codice:
Trasformazione in batch per codificare le immagini degli elementi in incorporamenti
Successivamente, utilizziamo il modello CLIP per codificare le immagini degli elementi negli incorporamenti e utilizziamo la trasformazione batch di SageMaker per eseguire l'inferenza batch.
Prima di creare il processo, utilizza il seguente frammento di codice per copiare le immagini dell'elemento dal bucket S3 pubblico di Amazon Berkeley Objects Dataset al tuo bucket. L'operazione richiede meno di 10 minuti.
Successivamente, esegui l'inferenza sulle immagini degli elementi in modo batch. Il processo di trasformazione batch di SageMaker utilizza il modello CLIP per codificare tutte le immagini archiviate nella posizione di input di Amazon S3 e carica gli incorporamenti di output in una cartella S3 di output. Il lavoro dura circa 10 minuti.
Carica gli incorporamenti da Amazon S3 in una variabile, in modo da poter importare i dati in OpenSearch Service in un secondo momento:
Crea un motore di ricerca unificato basato sul machine learning
Questa sezione illustra come creare un motore di ricerca che utilizza la ricerca k-NN con incorporamenti. Ciò include la configurazione di un cluster del servizio OpenSearch, l'importazione dell'incorporamento di elementi e l'esecuzione di query di ricerca di immagini e testo libero.
Configura il dominio del servizio OpenSearch utilizzando le impostazioni k-NN
In precedenza, hai creato un cluster OpenSearch. Ora creerai un indice per archiviare i dati del catalogo e gli incorporamenti. È possibile configurare le impostazioni dell'indice per abilitare la funzionalità k-NN utilizzando la seguente configurazione:
Questo esempio utilizza l'estensione Client Python Elasticsearch per comunicare con il cluster OpenSearch e creare un indice per ospitare i tuoi dati. Puoi correre %pip install elasticsearch
nel notebook per installare la libreria. Vedere il seguente codice:
Importa i dati di incorporamento delle immagini in OpenSearch Service
Ora esegui il ciclo del set di dati e inserisci i dati degli elementi nel cluster. L'importazione dei dati per questa pratica dovrebbe terminare entro 60 secondi. Esegue anche una semplice query per verificare se i dati sono stati inseriti correttamente nell'indice. Vedere il seguente codice:
Eseguire una query in tempo reale
Ora che disponi di un indice del servizio OpenSearch funzionante che contiene l'incorporamento delle immagini degli elementi come nostro inventario, diamo un'occhiata a come puoi generare l'incorporamento per le query. Devi creare due endpoint SageMaker per gestire rispettivamente gli incorporamenti di testo e immagini.
Si creano anche due funzioni per utilizzare gli endpoint per codificare immagini e testi. Per il encode_text
funzione, aggiungi this is
prima del nome di un oggetto per tradurre il nome di un oggetto in una frase per la descrizione dell'oggetto. memory_size_in_mb
è impostato su 6 GB per servire la sottolineatura trasformatore ed RESNET Modelli. Vedere il seguente codice:
Puoi prima tracciare l'immagine che verrà utilizzata.
Diamo un'occhiata ai risultati di una semplice query. Dopo aver recuperato i risultati da OpenSearch Service, ottieni l'elenco dei nomi degli elementi e delle immagini da dataset
:
Il primo elemento ha un punteggio di 1.0, perché le due immagini sono uguali. Altri elementi sono diversi tipi di occhiali nell'indice di OpenSearch Service.
Puoi anche utilizzare il testo per interrogare l'indice:
Ora sei in grado di ottenere tre immagini di bicchieri d'acqua dall'indice. Puoi trovare le immagini e il testo all'interno dello stesso spazio latente con il codificatore CLIP. Un altro esempio è cercare la parola "pizza" nell'indice:
ripulire
Con un modello pay-per-use, Serverless Inference è un'opzione conveniente per un modello di traffico poco frequente o imprevedibile. Se hai un rigoroso accordo sul livello di servizio (SLA), o non possono tollerare avviamenti a freddo, gli endpoint in tempo reale sono una scelta migliore. Usando multimodello or multi-contenitore gli endpoint forniscono soluzioni scalabili ed economiche per la distribuzione di un gran numero di modelli. Per ulteriori informazioni, fare riferimento a Prezzi di Amazon SageMaker.
Si consiglia di eliminare gli endpoint serverless quando non sono più necessari. Dopo aver terminato questo esercizio, puoi rimuovere le risorse con i seguenti passaggi (puoi eliminare queste risorse dal file Console di gestione AWSo utilizzando l'SDK AWS o l'SDK SageMaker):
- Elimina l'endpoint che hai creato.
- Facoltativamente, eliminare i modelli registrati.
- Facoltativamente, eliminare il ruolo di esecuzione SageMaker.
- Facoltativamente, svuota ed elimina il bucket S3.
Sommario
In questo post, abbiamo dimostrato come creare un'applicazione di ricerca k-NN utilizzando le funzionalità dell'indice k-NN di SageMaker e OpenSearch Service. Abbiamo utilizzato un modello CLIP pre-addestrato dal suo OpenAI attuazione.
L'implementazione dell'importazione del post da parte del servizio OpenSearch viene utilizzata solo per la prototipazione. Se desideri importare dati da Amazon S3 in OpenSearch Service su larga scala, puoi avviare un file Amazon SageMaker Elaborazione del lavoro con il tipo di istanza e il numero di istanze appropriati. Per un'altra soluzione di importazione di incorporamento scalabile, fare riferimento a Novartis AG utilizza Amazon OpenSearch Service K-Nearest Neighbor (KNN) e Amazon SageMaker per potenziare la ricerca e i consigli (Parte 3/4).
CLIP fornisce colpo zero capacità, che consente di adottare direttamente un modello pre-addestrato senza utilizzare trasferire l'apprendimento mettere a punto un modello. Ciò semplifica l'applicazione del modello CLIP. Se disponi di coppie di immagini del prodotto e testo descrittivo, puoi perfezionare il modello con i tuoi dati utilizzando l'apprendimento del trasferimento per migliorare ulteriormente le prestazioni del modello. Per ulteriori informazioni, vedere Apprendimento di modelli visivi trasferibili dalla supervisione del linguaggio naturale e la Repository CLIP GitHubsitery.
Informazioni sugli autori
Kevin Du è un Senior Data Lab Architect presso AWS, dedicato ad assistere i clienti nell'accelerare lo sviluppo dei loro prodotti Machine Learning (ML) e piattaforme MLOps. Con oltre un decennio di esperienza nella creazione di prodotti abilitati per il machine learning sia per le startup che per le imprese, il suo obiettivo è aiutare i clienti a semplificare la produzione delle loro soluzioni di machine learning. Nel tempo libero, a Kevin piace cucinare e guardare il basket.
Ananya Roi è un architetto Senior Data Lab specializzato in intelligenza artificiale e apprendimento automatico con sede a Sydney, in Australia. Ha lavorato con una vasta gamma di clienti per fornire indicazioni sull'architettura e aiutarli a fornire una soluzione AI/ML efficace tramite il coinvolgimento del data lab. Prima di AWS, lavorava come data scientist senior e si occupava di modelli ML su larga scala in diversi settori come Telco, banche e fintech. La sua esperienza in AI/ML le ha permesso di fornire soluzioni efficaci per problemi aziendali complessi ed è appassionata di sfruttare tecnologie all'avanguardia per aiutare i team a raggiungere i propri obiettivi.
- Distribuzione di contenuti basati su SEO e PR. Ricevi amplificazione oggi.
- Platoblockchain. Web3 Metaverse Intelligence. Conoscenza amplificata. Accedi qui.
- Fonte: https://aws.amazon.com/blogs/machine-learning/implement-unified-text-and-image-search-with-a-clip-model-using-amazon-sagemaker-and-amazon-opensearch-service/
- :È
- ][P
- $ SU
- 1
- 10
- 100
- 11
- 7
- 8
- 9
- a
- capace
- WRI
- accelera
- accetta
- accesso
- Raggiungere
- operanti in
- azioni
- aggiuntivo
- adottare
- Dopo shavasana, sedersi in silenzio; saluti;
- AG
- Accordo
- AI
- AI / ML
- Tutti
- Amazon
- Servizio Amazon OpenSearch
- Amazon Sage Maker
- .
- ed
- Un altro
- applicabile
- Applicazioni
- applicazioni
- opportuno
- circa
- architettonico
- architettura
- SONO
- argomento
- in giro
- AS
- At
- allegare
- Australia
- automaticamente
- AWS
- Banche
- basato
- Pallacanestro
- BE
- perché
- prima
- Berkeley
- MIGLIORE
- Meglio
- fra
- stile di vita
- costruire
- Costruzione
- costruito
- incassato
- affari
- aziende
- by
- detto
- Materiale
- funzionalità
- catalogo
- CD
- dai un'occhiata
- scegliere
- cliente
- Chiudi
- Cluster
- codice
- collezione
- colonne
- comunicare
- Comunicazione
- rispetto
- completamento di una
- complesso
- concetto
- condotto
- Configurazione
- Connettiti
- Collegamento
- veloce
- Consumatori
- contenere
- contiene
- contenuto
- discorsivo
- Corrispondente
- Costo
- costo effettivo
- potuto
- creare
- creato
- Creazione
- Credenziali
- Coppa
- Clienti
- bordo tagliente
- cicli
- dati
- analisi dei dati
- punti dati
- scienza dei dati
- scienziato di dati
- dataset
- decennio
- dedicato
- deep
- apprendimento profondo
- Predefinito
- definizione
- consegnare
- dimostrare
- dimostrato
- schierare
- distribuzione
- deployment
- descrizione
- desiderato
- dettagli
- Dev
- sviluppare
- Mercato
- dispositivo
- diverso
- Dimensioni
- direttamente
- Dsiplay
- paesaggio differenziato
- documenti
- dominio
- domini
- Dont
- giù
- scaricare
- durante
- ogni
- più facile
- facilmente
- ecommerce
- Efficace
- enable
- crittografia
- endpoint
- Fidanzamento
- motore
- Motori
- Inglese
- garantire
- aziende
- interamente
- iscrizione
- Ambiente
- errori
- esempio
- esecuzione
- Esercitare
- esperienza
- extra
- famiglia
- caratteristica
- Caratteristiche
- figura
- Compila il
- File
- Trovate
- finire
- Nome
- Flessibilità
- Focus
- i seguenti
- segue
- Nel
- formato
- essere trovato
- TELAIO
- Contesto
- Gratis
- Amico
- da
- anteriore
- function
- funzionale
- funzionalità
- funzioni
- ulteriormente
- generare
- generato
- ottenere
- Idiota
- GitHub
- vetro.
- Go
- Obiettivi
- andando
- buono
- guida
- maniglia
- Avere
- intestazioni
- altezza
- Aiuto
- aiutare
- aiuta
- qui
- superiore
- Colpire
- Visualizzazioni
- host
- ospitato
- di hosting
- Come
- Tutorial
- HTML
- http
- HTTPS
- centinaia
- i
- identificare
- Idle
- IDX
- Immagine
- Ricerca immagini
- immagini
- realizzare
- implementazione
- implementato
- Implementazione
- importare
- competenze
- in
- includere
- inclusi
- Index
- indici
- Indici
- industrie
- informazioni
- Infrastruttura
- ingresso
- install
- esempio
- invece
- istruzioni
- integrato
- interessato
- Interfaccia
- Internet
- inventario
- IT
- elementi
- SUO
- Lavoro
- Offerte di lavoro
- jpg
- json
- laboratorio
- Lingua
- laptop
- grandi
- larga scala
- lanciare
- strato
- apprendimento
- leveraging
- Biblioteca
- piace
- LINK
- Lista
- Annunci
- caricare
- Caricamento in corso
- località
- Lunghi
- più a lungo
- Guarda
- macchina
- machine learning
- fatto
- FA
- gestione
- gestione
- Manipolazione
- modo
- si intende
- misurare
- analisi
- Unire
- Meta
- Metadati
- metrico
- Minuti
- ML
- MLOp
- modello
- modelli
- Scopri di più
- cambiano
- Nome
- nomi
- Naturale
- Bisogno
- Rete
- rete neurale
- New
- GENERAZIONE
- taccuino
- numeri
- oggetto
- oggetti
- of
- offrire
- Vecchio
- on
- online
- aprire
- open source
- operazione
- Opzione
- OS
- Altro
- produzione
- Override
- panoramica
- proprio
- Packages
- coppie
- panda
- parte
- appassionato
- sentiero
- Cartamodello
- Persone
- perfetta
- Eseguire
- performance
- esecuzione
- fase
- immagine
- Immagini
- pezzo
- Pizza
- Piattaforme
- Platone
- Platone Data Intelligence
- PlatoneDati
- PoC
- punto
- punti
- Termini e Condizioni
- pool
- possibile
- Post
- energia
- alimentato
- pratica
- predizione
- Previsioni
- preparazione
- prevenire
- Precedente
- un bagno
- problemi
- lavorazione
- Prodotto
- Produzione
- Prodotti
- Profilo
- Programmazione
- progetto
- proprietà
- prototipazione
- fornire
- fornisce
- la percezione
- fini
- metti
- Python
- pytorch
- Presto
- rapidamente
- gamma
- Crudo
- Leggi
- di rose
- tempo reale
- Consigli
- record
- Rosso
- regex
- regione
- registrato
- rimuovere
- richiede
- riparazioni
- Risorse
- risposta
- REST
- colpevole
- Risultati
- nello specifico retail
- ritorno
- problemi
- Aumento
- Ruolo
- ROSE
- Correre
- sagemaker
- stesso
- Risparmi
- scalabile
- Scala
- scala
- Scienze
- Scienziato
- Punto
- sdk
- Cerca
- motore di ricerca
- Motori di ricerca
- secondo
- Sezione
- sicuro
- in modo sicuro
- problemi di
- anziano
- condanna
- servire
- serverless
- servizio
- Sessione
- set
- impostazioni
- Forma
- dovrebbero
- mostrato
- simile
- Un'espansione
- Taglia
- inferiore
- So
- soluzione
- Soluzioni
- alcuni
- Fonte
- lo spazio
- specializzato
- specifico
- stare in piedi
- inizio
- Startup
- step
- Passi
- conservazione
- Tornare al suo account
- memorizzati
- snellire
- Strict
- studio
- inviare
- Con successo
- tale
- supporti
- Interruttore
- sydney
- SYS
- prende
- le squadre
- Tecnologie
- Telco
- modello
- test
- che
- Il
- le informazioni
- loro
- Li
- Strumenti Bowman per analizzare le seguenti finiture:
- tre
- Attraverso
- tempo
- volte
- Titolo
- titoli
- a
- token
- top
- torcia
- Torciavisione
- traffico
- allenato
- trasferimento
- Trasformare
- tradurre
- vero
- Tipi di
- unificato
- unico
- imprevedibile
- us
- uso
- Utente
- APPREZZIAMO
- varietà
- verificare
- via
- Visualizza
- virtuale
- guardare
- Water
- WELL
- quale
- OMS
- larghezza
- wikipedia
- volere
- con
- entro
- senza
- Word
- lavoro
- sarebbe
- X
- Tu
- Trasferimento da aeroporto a Sharm
- zefiro