lucianotonet commited on
Commit
e93905e
1 Parent(s): b250d97

Atualiza Dockerfile e Modelfile para otimizar inicialização

Browse files

Ajustes no Dockerfile visam simplificar o processo de inicialização do serviço Ollama, incluindo a criação de um script de inicialização que assegura a configuração e execução adequada do modelo. Também foram removidas etapas desnecessárias para facilitar a manutenção. No Modelfile, houve uma atualização no ponto de partida do modelo, garantindo que a versão mais recente seja utilizada. Essas mudanças melhoram a eficiência e a estratégia de inicialização do ambiente, proporcionando uma experiência mais confiável e direta.

Files changed (2) hide show
  1. Dockerfile +17 -18
  2. Modelfile +8 -8
Dockerfile CHANGED
@@ -1,30 +1,29 @@
1
  FROM ollama/ollama:latest
2
 
3
  # Instala curl e outros pacotes necessários
4
- RUN apt-get update && apt-get install curl -y
5
-
6
- # Criação de um usuário não-root
7
- RUN useradd -m -u 1000 user
8
-
9
- # Muda para o usuário não-root
10
- USER user
11
 
12
  # Configura variáveis de ambiente
13
- ENV HOME=/home/user \
14
- PATH=/home/user/.local/bin:$PATH \
15
- OLLAMA_HOST=0.0.0.0
16
 
17
  # Define o diretório de trabalho
18
- WORKDIR $HOME/app
19
 
20
  # Copia o Modelfile para o diretório de trabalho
21
- COPY --chown=user:user Modelfile $HOME/app/
22
-
23
- # Baixa o modelo Llama 3.1
24
- RUN curl -fsSL https://huggingface.co/meta-llama/Meta-Llama-3.1-8B/resolve/main/llama3.1_ggmlv3.gguf -o llama3.1.gguf
25
-
26
- # Inicia o serviço Ollama e cria o modelo usando o Modelfile
27
- RUN ollama serve & sleep 5 && ollama create llama3.1 -f Modelfile
28
 
29
  # Exponha a porta usada pelo serviço Ollama
30
  EXPOSE 11434
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  FROM ollama/ollama:latest
2
 
3
  # Instala curl e outros pacotes necessários
4
+ RUN apt-get update && apt-get install -y curl
 
 
 
 
 
 
5
 
6
  # Configura variáveis de ambiente
7
+ ENV OLLAMA_HOST=0.0.0.0 \
8
+ OLLAMA_ORIGINS=https://*.hf.space
 
9
 
10
  # Define o diretório de trabalho
11
+ WORKDIR /app
12
 
13
  # Copia o Modelfile para o diretório de trabalho
14
+ COPY Modelfile /app/
 
 
 
 
 
 
15
 
16
  # Exponha a porta usada pelo serviço Ollama
17
  EXPOSE 11434
18
+
19
+ # Cria um script de inicialização
20
+ RUN echo '#!/bin/sh' > start.sh && \
21
+ echo 'ollama serve &' >> start.sh && \
22
+ echo 'sleep 10' >> start.sh && \
23
+ echo 'ollama pull llama3.1' >> start.sh && \
24
+ echo 'ollama create mymodel -f Modelfile' >> start.sh && \
25
+ echo 'tail -f /dev/null' >> start.sh && \
26
+ chmod +x start.sh
27
+
28
+ # Define o comando de inicialização
29
+ CMD ["./start.sh"]
Modelfile CHANGED
@@ -1,14 +1,14 @@
1
- FROM ./llama.gguf
2
 
3
  SYSTEM """
4
- You are a highly capable, honest, and intellectually curious AI assistant. Your purpose is to assist users by providing accurate, clear, and concise information, while maintaining a neutral and non-judgmental tone.
5
 
6
- - Always admit when you don’t know something rather than providing potentially misleading information.
7
- - When dealing with controversial topics, present the information thoughtfully and neutrally, without labeling the topic as sensitive.
8
- - If asked about complex problems, such as math or logic, walk through the problem step by step before delivering the final answer.
9
- - Avoid using filler phrases like 'Certainly', 'Absolutely', or 'Of course'. Instead, provide direct responses to all queries.
10
- - When referencing specific articles, papers, or books, remind the user that you don't have direct access to external databases and that they should verify the citations independently.
11
- - Respond directly to the language used by the user, and only bring up the information above if it is directly relevant to the query.
12
  """
13
 
14
  TEMPLATE """{{ if .System }}<|im_start|>system
 
1
+ FROM llama3.1
2
 
3
  SYSTEM """
4
+ Você é um assistente de IA altamente capaz, honesto e intelectualmente curioso. Seu propósito é auxiliar os usuários fornecendo informações precisas, claras e concisas, mantendo um tom neutro e sem julgamentos.
5
 
6
+ - Sempre admita quando não souber algo, em vez de fornecer informações potencialmente enganosas.
7
+ - Ao lidar com tópicos controversos, apresente as informações de forma ponderada e neutra, sem rotular o tópico como sensível.
8
+ - Se questionado sobre problemas complexos, como matemática ou lógica, percorra o problema passo a passo antes de fornecer a resposta final.
9
+ - Evite usar frases de preenchimento como 'Certamente', 'Absolutamente' ou 'Claro'. Em vez disso, forneça respostas diretas a todas as consultas.
10
+ - Ao fazer referência a artigos, papers ou livros específicos, lembre o usuário que você não tem acesso direto a bancos de dados externos e que eles devem verificar as citações de forma independente.
11
+ - Responda diretamente no idioma usado pelo usuário e mencione as informações acima se forem diretamente relevantes para a consulta.
12
  """
13
 
14
  TEMPLATE """{{ if .System }}<|im_start|>system