Botframework-solutions: Exportar script do powershell de serviço cognitivo (qnamaker: kb: export) qna export mangles caracteres especiais

Criado em 25 nov. 2020  ·  27Comentários  ·  Fonte: microsoft/botframework-solutions

Qual projeto é afetado?
Script de implantação

Em que idioma está isso?
O que acontece?
Caracteres especiais :
Comandos:

Plus d'information sur la lettre reçu des éléctions?
são exportados assim

precisa ser - Plus d'information sur la lettre reçu des éléctions?

Quais são as etapas para reproduzir esse problema?
Passos para reproduzir o comportamento:

Crie uma base de conhecimento
Use os caracteres especiais no campo Pergunta ou Resposta
Exporte usando o script update_cognitive_services.ps1
Inspecione o resultante em Deployment / Resources / Qna / {language} /nameofknowledgebase.qna

O que você esperava que acontecesse?
Aceite caracteres especiais como é, ç, ë, à, etc.

Você pode compartilhar algum registro, saída de erro, etc.?
Alguma captura de tela ou contexto adicional?

Estou reabrindo este problema, estou com o mesmo problema agora, mesmo tendo colocado "-encoding oem $ ($ outJson)"

Bot Services customer-replied-to customer-reported

Comentários muito úteis

Criado um PR em cli https://github.com/microsoft/botframework-cli/pull/1065 para dar suporte ao conteúdo qna exportado de saída para um arquivo com a opção --out. Com as alterações em, os usuários podem usar --out para especificar o caminho do arquivo de saída. Testado que funciona para o PowerShell.

Todos 27 comentários

Obrigado @edemehmetcan por relatar este problema. Analisaremos esse problema seguindo as etapas de reprodução que você mencionou.

Entraremos em contato assim que tivermos alguma atualização para você 😊.

Muito obrigado @ Batta32 . Estou esperando sua resposta.

Verifique também isso? Durante a exportação, há uma opção "qnaFormat" é um booleano que coloquei como verdadeiro para ter um arquivo .qna em meu repositório, mas recebo um erro "Argumento inesperado: verdadeiro"

https://www.npmjs.com/package/@microsoft/bf -qnamaker # bf-qnamakerkbexport

Por que usar isso? Desejo exportar diretamente o arquivo .qna e não passar por bf qnamaker: converter depois para converter json para arquivo QnA.

@edemehmetcan como você está executando o comando bf qnamaker:kb:export com o argumento --qnaFormat ?
Deve ser executado da seguinte forma:

bf qnamaker:kb:export --endpoint $qnaEndpoint --environment Prod --kbId $kb.kbId --subscriptionKey $kb.subscriptionKey --qnaFormat

Veja este exemplo de testes de unidade do repositório botframework-cli .

Tentei exportar assim e agora está funcionando, a sintaxe está correta?

        bf qnamaker:kb:export `
            --endpoint $qnaEndpoint `
            --environment Prod `
            --kbId $kb.kbId `
            --subscriptionKey $kb.subscriptionKey `
            --qnaFormat | Out-File -Force $($fileDestination)

Sim! Essa sintaxe também está correta .

Estaremos revisando a questão dos caracteres especiais agora, e assim que tivermos alguma atualização para você, retornaremos a este tópico 😊.

Muito obrigado!

Quando estou tentando sem "Out-File", a exportação está correta (no Terminal) com os caracteres corretos. Depois de exportar para um arquivo .. Os caracteres são novamente alterados estranhamente ...

Obrigado @edemehmetcan por deste ?
E se for, este PR deve consertar

Eu atualizei o botframework-cli e o mesmo script foi lançado no Azure DevOps (etapa da CLI do Azure), os personagens ainda estão alterados ... @axelsrz @ Batta32

Depois de revisar o arquivo, é melhor do que antes. Agora, só tenho o problema com "é" e "ï"

@axelsrz - devemos transferir esse problema para o repositório botframework-cli ? Como este parece ser um problema relacionado à ferramenta bf-cli ( bf qnamaker:kb:export especificamente)

@ Batta32 Mesmo se eu executar o qnamaker: kb : export localmente com o PowerShell. Ainda tenho o problema dos personagens. Isso não é algo relacionado à CLI do Azure, eu diria ...

@edemehmetcan - parece não estar relacionado à CLI do Azure, mas provavelmente relacionado ao botframework-cli, que é a interface usada para gerenciar os bots do Bot Framework e serviços relacionados (consulte o repositório botframework-cli ), esta CLI contém o bf qna:maker:kb:export comando que você está usando 😊.

Olá @edemehmetcan ,

Você pode tentar alterar a configuração do PS para usar UTF? Veja um link relevante abaixo.
https://stackoverflow.com/questions/40098771/changing-powershells-default-output-encoding-to-utf-8

Olá @hcyang, obrigado pela sua resposta. O PowerShell está usando UTF8.

Notei algo, depois de exportar o qna e abrir no Notepad ++ a codificação é "UCS 2 le BOM" que é muito estranho ...

E é muito enjoativo não ter como " luis: export " uma propriedade - out for qnamaker: export ...

Cumprimentos

Oi pessoal, fiz algumas investigações e isso parece não ter relação com o bf-cli. Está mais relacionado com o problema do formato de codificação de saída do PowerShell. Eu uso o cmd para chamar o comando export acima e a saída retorna o resultado normal para caracteres especiais, mas quando eu uso o PowerShell para chamar o mesmo comando, a saída retorna um resultado inesperado. Portanto, esse problema só acontece com o PowerShell com o conjunto Out-File. Tentei algumas maneiras de definir a codificação padrão para UTF no PowerShell, mas parece não funcionar. Este é o mesmo problema com o https://github.com/microsoft/botframework-cli/issues/1057 @axelsrz apontado acima.

Como @edemehmetcan sugeriu, a correção opcional é adicionar --out para o comando kb export para que ele não dependa de Out-File ou >> ou > para arquivos de saída

Adicione @munozemilio para mais informações.

Criado um PR em cli https://github.com/microsoft/botframework-cli/pull/1065 para dar suporte ao conteúdo qna exportado de saída para um arquivo com a opção --out. Com as alterações em, os usuários podem usar --out para especificar o caminho do arquivo de saída. Testado que funciona para o PowerShell.

@ feich-ms Obrigado pela resposta. É o que eu estava procurando! Estou esperando que o PR seja mesclado e vou tentar.

@munozemilio , você pode comentar sobre @ feich-ms PR?

Olá, acabei de tentar depois de atualizar o botframework-cli para a versão 4.11.1

            bf qnamaker:kb:export `
            --endpoint $qnaEndpoint `
            --environment Prod `
            --kbId $kb.kbId `
            --qnaFormat `
            --out $outQnA `
            --subscriptionKey $kb.subscriptionKey `
            --force

Eu tenho este erro: ". Argumentos inesperados: --out"

Olá @edemehmetcan , [email protected] foi lançado 8 dias atrás e não contém o PR microsoft / botframework-cli # 1065 como foi mesclado há 3 dias.

Essas mudanças serão integradas na próxima versão da ferramenta botframework-cli 😊.

Olá @ Batta32 , é o que pensei. Obrigado pelo esclarecimento. Quando o próximo lançamento será agendado? :)

@munozemilio & @ feich-ms - existe algum ETA para a nova versão da ferramenta botframework-cli?

uma atualização? @munozemilio & @ feich-ms @ Batta32

@edemehmetcan desculpe pela resposta tardia, tanto quanto eu sei, o próximo lançamento não será muito cedo. Para desbloqueá-lo, você pode instalar a última versão nightly build que já contém a correção. Basta usar npm install -g @ microsoft / botframework-cli @ next . Ele instalará o mais recente 4.12.0-dev.20201208.3315f42. Obrigada.

@ feich-ms muito obrigado, funciona com o próximo lançamento :) esperando o lançamento real então ...

@ feich-ms @ Batta32 Quando o próximo lançamento estará disponível?

Olá @edemehmetcan , desculpe pelo atraso na resposta. Pelo que eu sei, o próximo lançamento será em meados de 2 de fevereiro, 12 é o nosso dia de conclusão de código e podemos adiar o lançamento uma semana depois disso.

Esta página foi útil?
0 / 5 - 0 avaliações