复盘携程0415笔试题
第二题游游现在有一个公司,这个公司里有n个任务,每一个任务都有一个能力值和收益值,现在有m个工人,每一个工人都有一个能力值,对于每一个任务来说,只有这个人的能力值不低于该任务需要的能力值,才可以完成这个任务。假设多个工人可以完成同一个任务,收益为这个任务的收益值乘以这个任务完成的次数,现在想知道每一个工人最多只能安排一个任务的前提下,最大的收益值是多少?
输入描述每一个文件输入第一行输入一个整数T($1 \leq T \leq 100$),代表有T组测试数据。
接下来T组,每一组第一行输入两个整数n,m($1 \leq n,m \leq 10^4$)
第二行输入n个整数,其中a[i]代表第i个任务所需要的的能力值
第三行输入n个整数,其中$p_i$($1 \leq p[i] \leq 10^5$)代表第i个任务的收益
第四行输入m个整数,其中$b_i$($1 \leq b[i] \leq 10^5$)代表第i个工人的能力数据保证同一个文件内n的总和不超过$10^5$,m的总和不超过$10^5$
数据保证同一个文件内n的总和不超过$10^5$,m的总和不超过$10^5$
输出描述对于每一 ...
crewai框架出现SSLError
使用crewai框架(0.102.0)的时候,控制台突然会出现很多报错信息,但是并不影响程序的实际输出
ERROR:opentelemetry.sdk.trace.export:Exception while exporting Span batch.Traceback (most recent call last): File "G:\ProgramData\anaconda3\envs\crewai_1002\lib\site-packages\urllib3\connectionpool.py", line 464, in _make_request self._validate_conn(conn) File "G:\ProgramData\anaconda3\envs\crewai_1002\lib\site-packages\urllib3\connectionpool.py", line 1093, in _validate_conn conn.connect() File "G:\ProgramData ...
职业规划
f666a1e82130d441cf5f17739ffab4075a317a77dcaf23bc89a4de7efe3e46fd0051dae36ef4ea0d94b4ba139229f25f12629f83972c7d0fca6cbb2fed7693b7b398480d41e5aa64712ef3c8bfabed55aafc29dffcc8ad72f3c59f58623c299f6cdfbb1d868c2b0b4bceb04d6709acba5161b62d4511006fb81aaaa644397f14c1f35b3123b2677aa7a6baf30ce36f4ca79345672218c6237cd391e08be9ad4434ee56ac486f779682e829a66a45a2560f66d85a1980b4705849c51c1c81ccbcb38cac5c412dfcea80b7ab86cc39ce44aca68fbb741faf74d806f58e92b096cfb540ec3f6f9dd3aa6454a50746ab026c77e2b6f635a51e8ac ...
职场人情世故
f666a1e82130d441cf5f17739ffab407630a3f80748a82152524dd013beee000577739ab764e773a9c26bd20a57dd1be59ecd42a5ebd85bd72ab13ad1b1864f6d2a453f69d2a63b8910fb7b00da7e8ba5fffe87d68b620f5b8e9017c2e698eabefe004cf0972a7adeebc6f7ba34711db6a622611d06da4c3fb146ba10e9685b6460b46579d314877ab583a43ca1c24228720e42c624cff1aa95cd8cb6ec56b8a7755027431decd2fa9db0df4e218fa2a42fbd60ee7ffd21879835ee1f8b050577f9e57080a3110cdaca85576e56a38b104730738582f941b5c2c0eff49c50ba460ac9a9eabdc705a42feeaac124881140ea115fcc923aba3d ...
crewai框架添加知识源
官方的文档如下
https://docs.crewai.com/concepts/knowledge
但是不知道为什么,可能是版本的问题(我用的是0.86.0),参考官方文档的配置我会报错,并且也导入不了数据库,也可能用的不是官方API。本文以常用的csv,json,pdf作为知识库进行举例
重点:下面的代码是基于0.83.0版本的!!!最新版本(0.108.0)框架的配置可以移步文章底部
使用csv文件作为数据源def csv_knowledge_source(): # 指定向量数据库持久化文件夹(如需要可取消注释) os.environ["CREWAI_STORAGE_DIR"] = "vector_store_csv" current_dir = Path(__file__).parent csv_path = current_dir / "files/high_school_scores.csv" if not csv_path.exists(): raise FileNo ...
crewai框架配置回调函数
官方文档里只指提了一句
不过不太难,在crew.py文件里配置一下就行了,下面是一个demo,这个函数会在research_task任务执行完触发(配置LLM这里请看我这篇博客)
from crewai import Crew, Process, Agent, Taskfrom src.sfc_intent.tools.LLMS import my_llmopenai_llm = my_llm("openai")def my_callback(*args, **kwargs): print("任务执行完毕")# 定义您的代理researcher = Agent( role='研究员', goal='进行基础研究', backstory='一位经验丰富的研究员,热衷于发现见解', llm=openai_llm, verbose=True,)analyst = Agent( role='数据分析师', goal=' ...
TOSCA语法规范整理版
f666a1e82130d441cf5f17739ffab4079e1e5ddf70ab732ff88115b90b98b949f74fa7e470c8e7fcc53cad7f056bea93d0e30264ba3db9284b36c54bb0982957ec3fe28650d5606fd53ef8414ed1d5a6c34916c67156f14d3a31bb586992b2490e7327be0cedce2956c7ea2f9ae0e7bf163145247e190b394f096810b810721b5e7c3f37f3e97f6d474e55b618493cdb21c373b5c0de75587276084c2303faffcb81fab8f5e9a22d07634ffeb98ddfe37c706e967bc52d1d3c7fb347b86b732fd59165eda927b5562421f3fe1d07067a685345c87c473a6db8c1ed5489a1635eb7b2a676199d4074dbcfa4c2160705b9f087aef71724c8a31 ...
crewai框架第三方API使用官方RAG工具(pdf,csv,json)
最近在研究调用官方的工具,但官方文档的说明是在是太少了,后来在一个视频里看到了如何配置,记录一下
以PDF RAG Search工具举例,官方文档对于自定义模型的说明如下:
默认情况下,该工具使用 OpenAI 进行嵌入和总结。要自定义模型,可以使用配置字典,如下所示:
tool = PDFSearchTool( config=dict( llm=dict( provider="ollama", # or google, openai, anthropic, llama2, ... config=dict( model="llama2", # temperature=0.5, # top_p=1, # stream=true, ), ), embedder=dict( provider=&qu ...
Crewai框架添加日志功能
一开始看官方文档以为要用@callback这个注释在一个自定义函数上输出日志,结果弄半天都没有结果,最后发已经有现成的方法了(一开始搜log都没搜到这个方法)
只要添加这个output_log_file配置参数即可,由于我的项目只有一个crew,为了完整记录所有的日志,所以我就在上面配置了。官方可以指定文件路径和名称,我就写了一个自动生成文件名的函数,相关代码如下:
def generate_log_fileName(self): """ 根据当前时间生成日志文件路径 Returns: str: 完整的日志文件路径 """ # 日志目录,根据自己项目修改 log_dir = "../../logs" os.makedirs(log_dir, exist_ok=True) # 生成精确到秒的时间戳 timestamp = datetime.now().strftime("%Y%m%d_%H%M%S") # 返回 ...
Crewai框架配置第三方或本地大模型API
使用原生的Crewai框架在自定义的工具llm_utils.py或是crew.py文件里如下配置(调用OpenAI)
from crewai import Agent, Crew, Process, Task, LLMfrom crewai.project import CrewBase, agent, crew, taskllm = LLM( base_url="https://xxxxxxx/v1", api_key="sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", model="gpt-4o", # 本次使用的模型 # temperature=0.7, # 发散的程度 # timeout=None,# 服务请求超时 # max_retries=2,# 失败重试最大次数 )@agent def product_manager(se ...
