Closed alt-art closed 10 months ago
Não sabia o melhor lugar de contatar, então abri uma issue :p
Boa, então esse é um dos pontos que também foi levantado, acho que é a parte mais complicada na verdade Teria que entender a fundo como são implementado esses Trigger, mas ainda não cheguei nessa parte Imagino que podemos gerar uma versão beta só com as informações de passos, para testarmos como ficará e validar o custo também
Sim eu concordo
Eae rapazeada, tava vendo no VOD sobre fazer esse projetinho, tenho bastante experiência em python e minecraft, IA e esses negócio tudo ai, consegui fazer um beta de graça com o edge-tts e um servidor alternativo da openai (https://github.com/daviirodrig/minecraft-ai-narrator) e alguns pontos que eu tenho trazer:
O mod feito lá no tutorial é um bridge pra usar python no minecraft, o que é meio gambiarra e deixa um pouco limitado na questão dos eventos capturados no jogo, e também deixa mais difícil de se utilizar, pois precisa do usuário instalar o python na máquina dele pra usar o mod, seria interessante fazer o mod em java com Forge/Fabric pra comunicar com a api que faz o texto narrado e o TTS.
A api do elevenlabs é muito boa, e tem um TTS muito bom, mas tem um problema que é quantidade de caracteres por mês, se vc acabar com sua quota só no mes que vem que ele reseta, daria pra fazer um fallback com o edge-tts por exemplo, pra se caso acabar os caracteres ele faz com um tts um pouco pior mas de graça. (São muitos caracteres por mês não acho que chegue a precisar disso, mas só comentando)
A api em python já tem uma base boa, ela deve receber algum evento tipo "[Jogador] matou aranha" e mandar isso pra openai e dps pra elevenlabs, e retornar o áudio e o texto pro cliente no jogo, é interessante ter esse api rodando num servidor, pra novamente n ter que o usuário ter o python e ficar rodando isso.
Video de demonstração do que eu fiz:
https://cdn.davi.gq/narratorDemo.mp4
O que acham?
Eu também estava pensando sobre essa parada sobre o ter que instalar o python e eu pensei em um wraper que roda o python a partir de um binário pra ficar fácil pro Felps instalar. Agora sobre ser um servidor independente ficaria um pouco complexo já que teríamos que pensar como enviar o áudio e tocar a partir do mod, além de termos que procurar um serviço de hospedagem pra esse servidor.
Se você manjar e saber onde podemos hospedar pode ser uma ótima ideia.
@marcos-pereira-jr que tal criar uma aba "Discussions" aqui no GitHub para ficar mais fácil de comunicar? Não sei se já tem algo no Discord já criado
Boa tarde pessoal, desculpe a demora mas em horário comercial é realmente difícil de responder, vamos aos pontos levantados:
concordo com todas os seus levantamentos também cheguei a deduções parecidas com a tua, vamos algumas observação:
Concordo que a melhor alternativa seria fazer um mod baseado em Java, porém precisamos testar alguns pontos, o primeiro seria a possibilidade de chamar uma API externa em tempo de execução desse mod, se fez algo parecido poderia compartilhar?
Segundo, acho oque mais agrega a experiência infelizmente é o texto narrado por uma voz que alcança emoção, então não vejo a possibilidade de não usar algo como o elevenlabs. Podemos levantar os valores e levar ao Felps, assim podemos fazer um demonstrativo pequeno para que ele possa usar, se alcançar um numero bacana de pessoas a gente libera os valores para custear por demanda. Em ambiente de teste/desenvolvimento podemos não usar isso afim de reduzir os custo e só utilizar essa api para apresentação ao público.
Terceiro, esse ponto conecta com o segundo, se adotarmos uma servidor serverless como lambda podemos ter um custo por demanda, e apresenta uma poc que tenha todo o potencial da ideia
Concluindo, fico feliz de ter seu conhecimento compartilhado, acho que a possibilidade de se criar um mod Java é um caminho promissor, porém tem que ser validada. Um erro que eu mesmo vi no script é que ele não acumula log, se acumular logs e depois mandar gerar o audio a gente garante uma narrativa seja mais envolvente e otimizamos as chamadas, acho que se ajustarmos os parâmetros corretos podemos potencializar a experiência do jogador. Ainda acredito que devemos usar elevenlabs já que é o ponto chave da emoção criada. É isso qualquer coisa estou aqui para discussão, devo mais tarde mostrar um vídeo também do resultado gerado por aqui.
Também vejo esse ponto, a capacidade tocar um áudio por mod obtido a parti de uma api pode ser algo complexo, acho que vai um tempo de estudo encima das docs, embora eu ache plenamente possível, já que tem mod que fazem isso, é só uma questão de tempo/esforço. Sobre a hospedagem, não é problema nenhum quando se fala de lambda, podemos subir sem gastar nada, o ambiente python já vem configurado e só será gasto se realmente for utilizado, oque eu não sei é o custo de transferência pelos áudios, que pode interferir nesse calculo Sobre a questão da comunidade, acho interessante criar uma forma melhor de se comunicar, estou aberto a qualquer forma de contato.
Concluindo pessoal, de maneira geral acho que cabe uma verificada na possibilidade de usar o Java, se torna algo muito complexo poderíamos abortar e seguir com esse script mesmo, a principio a ideia do servidor é bacana porém para uma primeira versão podemos pensar em um bash que instala tudo no windows e pede as chaves da api da própria pessoa, afim de evitar complexidade com o custo, se escalar para algumas pessoas a gente pode reabrir essa possibilidade. Oque acham? É isso, desculpe o textão kkkk
@daviirodrig @alt-art habilitei a discussão, se quiserem responder por lá fico agradecido
Eu li o tutorial e percebi que os únicos eventos sendo capturados são os de passo, basicamente só falando onde o player está pisando. Eu me ofereço a ajudar, mas eu não sou um especialista nem em Python e nem em Minecraft, mas posso ajudar um pouco