Uma API de script de alto nível para criadores, desenvolvedores e mantenedores de bots.
A API de script Python Dialogflow CX (DFCX SCRAPI) é uma API de alto nível que estende o cliente oficial do Google Python para Dialogflow CX. SCRAPI torna o uso do DFCX mais fácil, mais amigável e mais python para construtores, desenvolvedores e mantenedores de bots.
SCRAPI --> Python Dialogflow CX
as
Keras --> Tensorflow
Com o DFCX SCRAPI você pode realizar muitas ações de construção e manutenção de bots em escala, incluindo, mas não se limitando a:
A autenticação pode variar dependendo de como e onde você está interagindo com o SCRAPI.
Se estiver usando SCRAPI com um notebook Google Colab, você pode adicionar o seguinte na parte superior do notebook para facilitar a autenticação:
project_id = '<YOUR_GCP_PROJECT_ID>'
# this will launch an interactive prompt that allows you to auth with GCP in a browser
!g cloud auth application - default login - - no - launch - browser
# this will set your active project to the `project_id` above
!g cloud auth application - default set - quota - project $ project_id
Depois de executar o procedimento acima, o Colab irá coletar suas credenciais do ambiente e passá-las diretamente para o SCRAPI. Não há necessidade de usar chaves de conta de serviço! Você pode então usar SCRAPI simplesmente assim:
from dfcx_scrapi . core . intents import Intents
agent_id = '<YOUR_AGENT_ID>'
i = Intents () # <-- Creds will be automatically picked up from the environment
intents_map = i . get_intents_map ( agent_id )
Se você estiver usando SCRAPI com Cloud Functions ou Cloud Run, a SCRAPI poderá selecionar as credenciais de ambiente padrão usadas por esses serviços sem nenhuma configuração adicional.
dfcx-scrapi
ao seu arquivo requirements.txt
Depois de configurar o acima, seu código de função pode ser usado facilmente assim:
from dfcx_scrapi . core . intents import Intents
agent_id = '<YOUR_AGENT_ID>'
i = Intents () # <-- Creds will be automatically picked up from the environment
intents_map = i . get_intents_map ( agent_id )
Semelhante ao Cloud Functions/Cloud Run, o SCRAPI pode detectar suas credenciais de autenticação local se você estiver usando a CLI gcloud.
gcloud init
.gcloud auth login
gcloud auth list
para garantir que sua conta principal esteja ativa.Isso autenticará sua conta principal do GCP com a CLI gcloud, e a SCRAPI poderá obter as credenciais aqui.
Existem algumas classes no SCRAPI que ainda dependem de chaves de conta de serviço, principalmente a classe DataframeFunctions devido à forma como ela é autenticada no Planilhas Google.
Para usar essas funções, você precisará de uma conta de serviço com acesso adequado ao seu projeto do GCP.
Para obter mais informações e visualizar a documentação oficial das contas de serviço, acesse Criação e gerenciamento de contas de serviço do GCP.
Depois de obter uma chave de conta de serviço com as permissões apropriadas, você poderá usá-la da seguinte maneira:
from dfcx_scrapi . core . intents import Intents
from dfcx_scrapi . tools . dataframe_functions import DataframeFunctions
agent_id = '<YOUR_AGENT_ID>'
creds_path = '<PATH_TO_YOUR_SERVICE_ACCOUNT_JSON_FILE>'
i = Intents ( creds_path = creds_path )
dffx = DataframeFunctions ( creds_path = creds_path )
df = i . bulk_intent_to_df ( agent_id )
dffx . dataframe_to_sheets ( 'GOOGLE_SHEET_NAME' , 'TAB_NAME' , df )
Configure as credenciais do Google Cloud Platform e instale dependências.
gcloud auth login
gcloud auth application-default login
gcloud config set project < project name >
python3 -m venv venv
source ./venv/bin/activate
pip install -r requirements.txt
Para executar um código simples, você pode fazer o seguinte:
dfcx_scrapi.core
from dfcx_scrapi . core . intents import Intents
creds_path = '<PATH_TO_YOUR_SERVICE_ACCOUNT_JSON_FILE>'
agent_path = '<FULL_DFCX_AGENT_ID_PATH>'
# DFCX Agent ID paths are in this format:
# 'projects/<project_id>/locations/<location_id>/agents/<agent_id>'
# Instantiate your class object and pass in your credentials
i = Intents ( creds_path , agent_id = agent_path )
# Retrieve all Intents and Training Phrases from an Agent and push to a Pandas DataFrame
df = i . bulk_intent_to_df ()
Aqui está uma breve visão geral da estrutura da biblioteca SCRAPI e a motivação por trás dessa estrutura.
A pasta Core é sinônimo dos principais tipos de recursos nos Agentes DFCX (agentes, intenções, fluxos, etc.)
A pasta Ferramentas contém vários kits de ferramentas personalizados que permitem realizar tarefas mais complexas de gerenciamento de bot, como
A pasta Builders contém métodos simples para construir os protos subjacentes no Dialogflow CX
Agradecemos quaisquer contribuições ou solicitações de recursos que você gostaria de enviar!
Distribuído sob a licença Apache 2.0. Consulte LICENÇA para obter mais informações.
Patrick Marlow - [email protected] - @kmaphoenix
Milad Tabrizi - [email protected] - @MRyderOC
Link do projeto: https://github.com/GoogleCloudPlatform/dfcx-scrapi
Biblioteca de cliente Python do Dialogflow CX
Abraçando o Rosto – Paráfrase de Pégaso