我正在编写一个由AWS Bedrock 支持的crewAI。生成代码的应用程序。
我看到的问题是它会产生不完整的响应。该代码生成一些 python 函数,但会
因此,我试图了解 bedrock 和crewai 是如何工作的,以使其产生更完整的答案。
代码片段:
MODEL_ID = "anthropic.claude-3-5-sonnet-20240620-v1:0"
bedrock = boto3.client(service_name="bedrock-runtime", region_name="us-east-1")
docs_tool = DirectoryReadTool(directory=DIRECTORY_PATH)
file_tool = FileReadTool()
model_kwargs = {
"max_tokens": 10000,
"temperature": 0.1,
"top_k": 250,
"top_p": 1,
"stop_sequences": ["\n\nHuman"],
}
agent_llm = ChatBedrock(client=bedrock,model_id=MODEL_ID,model_kwargs=model_kwargs)
def developer(tools):
""" An agent representing a senior developer"""
agent = Agent(
role='Senior application developer and team lead',
goal='Make sure the code produced by your team is at the required standard',
backstory=("You are a senior application developer"),
memory=True,
verbose=True,
allow_delegation=True,
llm=agent_llm,
tools=tools
)
return agent
def dev_task(tools, agent):
""" Tasks for writing unit tests"""
task = Task(
description = (
"Review this code and refactor it to make it more readable"
"do not return comments, feedback, breakdown or notes, just code."
),
expected_output = ("A refactored code base that is more readable"),
tools=tools,
agent= agent
)
return task
crew = Crew(
agents=agent,
tasks=tasks, # Optional: Sequential task execution is default
)
return crew, tasks
我尝试过使用其他模型,如 llama3 和 Mistral,但它们似乎与crewai 不兼容,会抛出错误。看起来克劳德人类是唯一兼容的。 我尝试过使用 langchain,但是在我的机器上应用 Rag 时,vecotrisation 需要很长时间。不确定是否有一种编程方式可以让基岩做到这一点。
代币化是否太短? 我是否正确使用了crewAI? 我正确使用基岩了吗? 我提供的代码库太大了吗?我要求目录工具分析目录。
感谢您的想法。
我尝试过使用其他模型,如 llama3 和 Mistral,但它们似乎与crewai 不兼容,会抛出错误。看起来克劳德人类是唯一兼容的。 我尝试过使用 langchain,但是在我的机器上应用 Rag 时,vecotrisation 需要很长时间。不确定是否有一种编程方式可以让基岩做到这一点。
为了更好地解决问题。让我知道您正在使用的版本:python、crewai、langchain_aws、litellm