Sobre a base de conhecimento em src/brain/prolog-controller/database
Os fatos disponíveis nos programas dispostos neste diretório são:
regiao(?Nome:string, ?QuantidadeEstados:int)estado(?Nome:string, ?Sigla:string, ?NomeRegiao:string, ?NomeCapital:string)tamanho(-EstadosEAreas:list(NomeEstado-Area))municipio(?Nome:string, ?NomeEstado:string)questao(?Pergunta:string, -RespostaDada:string, -UsernameAutor:string, -IdAutor:int, -Votos:int, -Ano:int)
Pensando nos fatos em termos de tabela, o esquema do banco de conhecimentos fica da seguinte forma no modelo relacional:
| crie um bot | instale |
clone este repositório
git clone https://github.com/micalevisk/siege-telegram-bot
|
🙏
npm install
|
- Altere o nome do arquivo
.env.examplepara.env; - Altere o conteúdo do arquivo renomeado para adicionar o token do seu bot (recuperado ao criar o bot);
- Execute
npm startno terminal.
As perguntas listadas a seguir contém apenas sentenças que o bot entenderá (InSeNsÍvEl aO cAsO)
- as perguntas tenta ser o mais breve possível (sem gerar ambiguidade)
- algumas palavras podem ser substituídas por seus sinônimos mais comuns (além de versões sem acentuação)
- palavras entre colchetes indicam que estes são opcionais; a barra indica uma alternativa
- os substantivos próprios devem iniciar em maiúsculo (como manda a gramática)
- palavras em destaque são consideradas "variáveis"; representam apenas o conceito
- a interrogação no final da pergunta é indiferente para a compreensão do bot
- espaços excedentes são ignorados
- qual [é] [a] capital/sede/metrópole do/de/da
Estado Municípioé [a] capital/sede/metrópole de qual/algum estado?Municípioé [a] capital/sede/metrópole do/de/daEstado- Existe/Há algum estado cuja [a] capital/sede/metrópole tem/possua o mesmo nome do estado?
- O [estado [do/de/da]]
Estadotem/possui quantas/quantos cidades/municípios? Estado/Municípioestá/fica [localizado] em qual/que região?
- O símbolo '+' indica que a variável (que segue) deve ser uma entrada, i.e., ter valor.
- As querys terminadas com ponto final já estão no formato exato, i.e., estão prontas para serem executadas.
| no. | query |
|---|---|
| 1 | capital(+Estado, NC) |
| 2 | capital(NE, +Município) |
| 3 | capital(+Estado, +Município) |
| 4 | findall(E, capital(E,E), +Quais), list_nonempty(+Quais, +Existe) |
| 14 | municipios(+Estado, Municipios), length(Municipios, QtdMunicipios) |
| 17 | regiao_de(+Nome, Regiao) |


