智能Agent場景實戰指南 Day 26:Agent評估與性能優化

【智能Agent場景實戰指南 Day 26】Agent評估與性能優化

開篇

歡迎來到"智能Agent場景實戰指南"系列的第26天!今天我們將深入探討智能Agent的評估方法與性能優化技術。構建高效、可靠的智能Agent系統需要完善的評估體系和優化策略,本文將系統講解如何量化評估Agent性能、識別系統瓶頸以及實施針對性優化,幫助開發者打造高性能的企業級智能Agent應用。

場景概述

業務價值

有效的Agent評估與優化帶來的核心價值:

  1. 質量保障:確保Agent行為符合預期
  2. 性能提升:優化響應速度和資源利用率
  3. 成本控制:降低計算資源和API調用成本
  4. 持續改進:建立可衡量的優化目標
  5. 用戶體驗:提供穩定高效的服務質量

技術挑戰

實現全面評估與優化面臨的主要挑戰:

  1. 評估指標多樣性:需要多維度量化評估
  2. 測試數據覆蓋:構建代表性測試數據集
  3. 性能瓶頸識別:準確找到系統瓶頸點
  4. 優化權衡:平衡質量與性能/成本
  5. 動態適應:適應不斷變化的用戶需求

技術原理

評估維度

評估維度關鍵指標測量方法
功能正確性任務完成率測試用例通過率
響應質量回答準確度人工/自動評分
性能表現響應延遲時間測量
資源效率CPU/內存使用系統監控
穩定性錯誤率日志分析
用戶體驗滿意度評分用戶反饋

優化技術

優化領域常用技術適用場景
模型優化量化/蒸餾生成延遲高
緩存策略多級緩存重復查詢多
異步處理非阻塞架構長流程任務
負載均衡動態分配高并發場景
預處理預計算可預測需求

架構設計

評估系統架構

[測試數據集]
│
▼
[評估引擎] → [功能測試模塊]
│           │
▼           ▼
[性能測試] ← [質量評估模塊]
│           │
▼           ▼
[優化建議] → [報告生成]

關鍵組件

  1. 測試數據集管理:存儲和管理測試用例
  2. 評估引擎核心:協調評估流程
  3. 功能測試模塊:驗證Agent行為正確性
  4. 質量評估模塊:評價響應質量
  5. 性能測試模塊:測量系統性能指標
  6. 優化建議生成:分析評估結果提出優化建議

代碼實現

基礎環境配置

# requirements.txt
pytest==7.4.0
numpy==1.24.3
pandas==2.0.3
openai==0.28.0
tqdm==4.65.0
psutil==5.9.5

評估系統核心實現

from typing import List, Dict, Any
import time
import pandas as pd
import numpy as np
from tqdm import tqdm
import psutil
import pytestclass AgentEvaluator:
def __init__(self, agent_instance):
"""
初始化Agent評估器
:param agent_instance: 待評估的Agent實例
"""
self.agent = agent_instance
self.test_cases = []
self.metrics = {
'functional': {},
'performance': {},
'resource': {},
'quality': {}
}def load_test_cases(self, test_case_file: str):
"""加載測試用例"""
df = pd.read_csv(test_case_file)
for _, row in df.iterrows():
self.test_cases.append({
'input': row['input'],
'expected': row['expected'],
'context': row.get('context', '')
})def evaluate_functional(self) -> Dict[str, float]:
"""執行功能評估"""
print("Running functional evaluation...")
results = []for case in tqdm(self.test_cases):
try:
response = self.agent.handle_request(case['input'], case['context'])
passed = self._check_response(response, case['expected'])
results.append(passed)
except Exception as e:
print(f"Error evaluating case {case['input']}: {str(e)}")
results.append(False)pass_rate = sum(results) / len(results)
self.metrics['functional'] = {
'pass_rate': pass_rate,
'total_cases': len(results),
'passed_cases': sum(results)
}return self.metrics['functional']def evaluate_performance(self, warmup: int = 3) -> Dict[str, float]:
"""執行性能評估"""
print("Running performance evaluation...")
latencies = []# 預熱
for _ in range(warmup):
self.agent.handle_request("warmup", "")# 正式測試
for case in tqdm(self.test_cases):
start_time = time.perf_counter()
self.agent.handle_request(case['input'], case['context'])
latency = time.perf_counter() - start_time
latencies.append(latency)self.metrics['performance'] = {
'avg_latency': np.mean(latencies),
'p95_latency': np.percentile(latencies, 95),
'min_latency': np.min(latencies),
'max_latency': np.max(latencies),
'throughput': len(latencies) / sum(latencies)
}return self.metrics['performance']def evaluate_resource_usage(self) -> Dict[str, float]:
"""評估資源使用情況"""
print("Evaluating resource usage...")
cpu_usages = []
mem_usages = []process = psutil.Process()for case in tqdm(self.test_cases):
# 測試前資源狀態
cpu_before = process.cpu_percent(interval=0.1)
mem_before = process.memory_info().rss / (1024 * 1024)  # MBself.agent.handle_request(case['input'], case['context'])# 測試后資源狀態
cpu_after = process.cpu_percent(interval=0.1)
mem_after = process.memory_info().rss / (1024 * 1024)cpu_usages.append(cpu_after - cpu_before)
mem_usages.append(mem_after - mem_before)self.metrics['resource'] = {
'avg_cpu': np.mean(cpu_usages),
'max_cpu': np.max(cpu_usages),
'avg_mem': np.mean(mem_usages),
'max_mem': np.max(mem_usages)
}return self.metrics['resource']def evaluate_quality(self, llm_evaluator=None) -> Dict[str, float]:
"""評估響應質量"""
print("Evaluating response quality...")
scores = []for case in tqdm(self.test_cases):
response = self.agent.handle_request(case['input'], case['context'])if llm_evaluator:
score = llm_evaluator.evaluate(
case['input'],
response,
case.get('expected', None)
)
else:
score = self._simple_quality_score(response, case.get('expected', None))scores.append(score)self.metrics['quality'] = {
'avg_score': np.mean(scores),
'min_score': np.min(scores),
'max_score': np.max(scores)
}return self.metrics['quality']def _check_response(self, response: Any, expected: Any) -> bool:
"""檢查響應是否符合預期"""
if isinstance(expected, str):
return expected.lower() in str(response).lower()
elif callable(expected):
return expected(response)
else:
return str(response) == str(expected)def _simple_quality_score(self, response: Any, expected: Any = None) -> float:
"""簡單質量評分(0-1)"""
if expected is None:
# 無預期結果時基于響應長度和信息量評分
response_str = str(response)
length_score = min(len(response_str.split()), 50) / 50  # 最大50詞
info_score = 0.5 if any(keyword in response_str.lower()
for keyword in ['know', 'understand', 'information']) else 0
return (length_score + info_score) / 2
else:
# 有預期結果時基于相似度評分
expected_str = str(expected)
response_str = str(response)
common_words = set(expected_str.lower().split()) & set(response_str.lower().split())
return len(common_words) / max(len(set(expected_str.lower().split())), 1)def generate_report(self) -> str:
"""生成評估報告"""
report = f"""
Agent Evaluation Report
======================Functional Metrics:
- Test Cases: {self.metrics['functional'].get('total_cases', 0)}
- Pass Rate: {self.metrics['functional'].get('pass_rate', 0):.1%}Performance Metrics:
- Average Latency: {self.metrics['performance'].get('avg_latency', 0):.3f}s
- 95th Percentile Latency: {self.metrics['performance'].get('p95_latency', 0):.3f}s
- Throughput: {self.metrics['performance'].get('throughput', 0):.1f} requests/sResource Usage:
- Average CPU Usage: {self.metrics['resource'].get('avg_cpu', 0):.1f}%
- Maximum CPU Usage: {self.metrics['resource'].get('max_cpu', 0):.1f}%
- Average Memory Usage: {self.metrics['resource'].get('avg_mem', 0):.1f}MB
- Maximum Memory Usage: {self.metrics['resource'].get('max_mem', 0):.1f}MBQuality Scores:
- Average Quality Score: {self.metrics['quality'].get('avg_score', 0):.2f}/1.0
"""# 添加優化建議
report += "\nOptimization Recommendations:\n"
if self.metrics['performance']['avg_latency'] > 1.0:
report += "- Consider implementing caching for frequent requests\n"
if self.metrics['resource']['avg_cpu'] > 70:
report += "- Optimize model inference or scale up hardware\n"
if self.metrics['quality']['avg_score'] < 0.7:
report += "- Improve prompt engineering or fine-tune models\n"return report

優化策略實現

class AgentOptimizer:
def __init__(self, agent_instance):
self.agent = agent_instance
self.cache = {}def implement_caching(self, cache_size: int = 1000):
"""實現查詢緩存優化"""
original_handle = self.agent.handle_requestdef cached_handle(input_text: str, context: str = "") -> Any:
cache_key = f"{input_text}:{context}"
if cache_key in self.cache:
return self.cache[cache_key]result = original_handle(input_text, context)
if len(self.cache) >= cache_size:
self.cache.pop(next(iter(self.cache)))
self.cache[cache_key] = result
return resultself.agent.handle_request = cached_handledef optimize_model(self, quantize: bool = True, use_smaller_model: bool = False):
"""優化模型推理"""
if hasattr(self.agent, 'model'):
if quantize:
self.agent.model = self._quantize_model(self.agent.model)
if use_smaller_model:
self.agent.model = self._load_smaller_model()def async_handling(self):
"""實現異步處理優化"""
import asynciooriginal_handle = self.agent.handle_requestasync def async_handle(input_text: str, context: str = "") -> Any:
return await asyncio.get_event_loop().run_in_executor(
None, original_handle, input_text, context
)self.agent.handle_request_async = async_handle
self.agent.handle_request = lambda i, c: asyncio.run(async_handle(i, c))def _quantize_model(self, model):
"""模型量化實現(示例)"""
print("Applying model quantization...")
return model  # 實際項目中實現真實量化邏輯def _load_smaller_model(self):
"""加載更小模型(示例)"""
print("Loading smaller model...")
return self.agent.model  # 實際項目中加載更小模型class LLMEvaluator:
"""使用LLM評估響應質量"""
def __init__(self, api_key: str):
self.client = openai.OpenAI(api_key=api_key)def evaluate(self, query: str, response: str, expected: str = None) -> float:
"""評估響應質量(0-1)"""
prompt = self._build_evaluation_prompt(query, response, expected)
result = self.client.chat.completions.create(
model="gpt-4",
messages=[{"role": "system", "content": prompt}],
max_tokens=10,
temperature=0
)
return float(result.choices[0].message.content.strip())def _build_evaluation_prompt(self, query: str, response: str, expected: str = None) -> str:
"""構建評估提示"""
if expected:
return f"""
Evaluate the response to the query based on correctness and completeness (0-1 score):Query: {query}
Expected: {expected}
Response: {response}Provide only a number between 0 and 1 as your evaluation score.
"""
else:
return f"""
Evaluate the response quality based on relevance and usefulness (0-1 score):Query: {query}
Response: {response}Provide only a number between 0 and 1 as your evaluation score.
"""

關鍵功能

綜合評估流程

def comprehensive_evaluation(agent, test_cases_path: str, llm_api_key: str = None):
"""執行綜合評估流程"""
evaluator = AgentEvaluator(agent)
evaluator.load_test_cases(test_cases_path)# 執行各項評估
evaluator.evaluate_functional()
evaluator.evaluate_performance()
evaluator.evaluate_resource_usage()if llm_api_key:
llm_evaluator = LLMEvaluator(llm_api_key)
evaluator.evaluate_quality(llm_evaluator)
else:
evaluator.evaluate_quality()# 生成報告
report = evaluator.generate_report()
print(report)return evaluator.metrics

基于評估的優化

def optimize_based_on_metrics(agent, metrics: Dict[str, Any]):
"""基于評估結果實施優化"""
optimizer = AgentOptimizer(agent)# 根據性能指標優化
if metrics['performance']['avg_latency'] > 1.0:
optimizer.implement_caching()
print("Implemented caching for performance improvement")# 根據資源使用優化
if metrics['resource']['avg_cpu'] > 70:
optimizer.optimize_model(quantize=True)
print("Optimized model through quantization")# 根據質量評分優化
if metrics['quality']['avg_score'] < 0.7:
print("Consider improving training data or prompt engineering")return agent

測試與驗證

測試策略

  1. 單元測試:驗證各評估指標計算正確性
  2. 集成測試:測試整個評估流程
  3. 基準測試:建立性能基準
  4. A/B測試:比較優化前后效果

驗證方法

def test_quality_scoring():
"""測試質量評分邏輯"""
evaluator = AgentEvaluator(None)# 測試有預期結果的評分
assert 0.5 < evaluator._simple_quality_score(
"The capital of France is Paris",
"Paris is France's capital"
) <= 1.0# 測試無預期結果的評分
assert 0 <= evaluator._simple_quality_score(
"This is a response"
) <= 1.0def benchmark_optimization(original_agent, optimized_agent, test_cases_path: str):
"""基準測試優化效果"""
original_metrics = comprehensive_evaluation(original_agent, test_cases_path)
optimized_metrics = comprehensive_evaluation(optimized_agent, test_cases_path)improvement = {
'latency': (original_metrics['performance']['avg_latency'] -
optimized_metrics['performance']['avg_latency']) /
original_metrics['performance']['avg_latency'],
'throughput': (optimized_metrics['performance']['throughput'] -
original_metrics['performance']['throughput']) /
original_metrics['performance']['throughput'],
'cpu_usage': (original_metrics['resource']['avg_cpu'] -
optimized_metrics['resource']['avg_cpu']) /
original_metrics['resource']['avg_cpu']
}print(f"Optimization Results:")
print(f"- Latency improved by {improvement['latency']:.1%}")
print(f"- Throughput improved by {improvement['throughput']:.1%}")
print(f"- CPU usage reduced by {improvement['cpu_usage']:.1%}")return improvement

案例分析:客服Agent優化

業務場景

某電商客服Agent面臨以下問題:

  1. 高峰時段平均響應時間3.2秒
  2. 15%的查詢回答不準確
  3. CPU利用率長期高于80%
  4. 缺乏系統化的評估方法

優化方案

  1. 評估實施
# 加載測試用例
test_cases = "path/to/customer_service_test_cases.csv"# 執行評估
metrics = comprehensive_evaluation(
customer_service_agent,
test_cases,
llm_api_key="your_openai_key"
)
  1. 優化實施
# 基于評估結果優化
optimized_agent = optimize_based_on_metrics(
customer_service_agent,
metrics
)# 驗證優化效果
benchmark_optimization(
customer_service_agent,
optimized_agent,
test_cases
)
  1. 優化結果
    | 指標 | 優化前 | 優化后 | 提升 |
    | — | — | — | — |
    | 平均延遲 | 3.2s | 1.1s | 66% |
    | 準確率 | 85% | 92% | 7% |
    | CPU使用率 | 82% | 65% | 17% |
    | 吞吐量 | 12qps | 28qps | 133% |

實施建議

最佳實踐

  1. 持續評估
def continuous_evaluation(agent, test_cases_path: str, schedule: str = "daily"):
"""設置持續評估任務"""
from apscheduler.schedulers.background import BackgroundSchedulerscheduler = BackgroundScheduler()
scheduler.add_job(
comprehensive_evaluation,
trigger='cron',
day_of_week='*' if schedule == "daily" else 'mon',
hour=2,
args=[agent, test_cases_path]
)
scheduler.start()
  1. 漸進優化
  • 先解決最嚴重的性能瓶頸
  • 每次優化后重新評估
  • 保留優化前后的版本對比
  1. 監控告警
def setup_monitoring(agent, thresholds: Dict[str, Any]):
"""設置性能監控和告警"""
while True:
metrics = quick_evaluate(agent)  # 簡化版評估
for metric, value in metrics.items():
if value > thresholds.get(metric, float('inf')):
alert(f"High {metric}: {value}")
time.sleep(300)  # 每5分鐘檢查一次

注意事項

  1. 評估覆蓋:確保測試用例覆蓋主要場景
  2. 優化平衡:避免過度優化單一指標
  3. 環境一致:評估和優化在相同環境進行
  4. 用戶反饋:結合主觀體驗評估優化效果

總結

核心知識點

  1. 評估體系:多維度量化Agent性能和質量
  2. 優化技術:緩存、模型優化、異步處理等
  3. 評估方法:自動化測試與人工評估結合
  4. 優化策略:基于數據的針對性優化

實際應用

  1. 性能調優:識別和解決系統瓶頸
  2. 質量保障:確保Agent行為符合預期
  3. 資源規劃:合理配置計算資源
  4. 持續改進:建立評估優化閉環

下期預告

明天我們將探討【Day 27: Agent部署與可擴展性】,深入講解如何將智能Agent系統部署到生產環境并實現水平擴展。

參考資料

  1. AI系統性能評估方法
  2. LLM評估基準
  3. 模型優化技術
  4. 生產環境AI系統監控
  5. 持續集成在AI系統中的實踐

文章標簽:智能Agent,性能評估,系統優化,質量保障,LLM應用

文章簡述:本文詳細介紹了智能Agent的評估與性能優化方法。針對生產環境中Agent系統缺乏量化評估標準、性能瓶頸難以識別等問題,提出了全面的評估體系和針對性優化策略。通過完整的Python實現和電商客服案例分析,開發者可以快速應用這些技術評估和優化自己的Agent系統,顯著提升服務質量和性能表現。文章涵蓋評估指標設計、優化技術實現和持續改進流程等實用內容,幫助開發者構建高性能、高可用的智能Agent應用。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/917373.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/917373.shtml
英文地址,請注明出處:http://en.pswp.cn/news/917373.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

機器學習——下采樣(UnderSampling),解決類別不平衡問題,案例:邏輯回歸 信用卡欺詐檢測

過采樣&#xff1a; 機器學習——過采樣&#xff08;OverSampling&#xff09;&#xff0c;解決類別不平衡問題&#xff0c;案例&#xff1a;邏輯回歸 信用卡欺詐檢測-CSDN博客 &#xff08;完整代碼在底部&#xff09; 使用下采樣解決類別不平衡問題 —— 以信用卡欺詐識別為…

Qt 槽函數被執行多次,并且使用Qt::UniqueConnection無效【已解決】

Qt 槽函數被執行多次&#xff0c;并且使用Qt::UniqueConnection無效引言一、問題描述二、解決方案三、深入了解信號和槽綁定機制引言 之前剛遇到 - 信號和槽正常連接返回true&#xff0c;但發送信號后槽函數無響應問題&#xff0c;現在又遇到槽函數執行多次&#xff0c;使用Qt…

Autosar Nm-網管報文PNC停發后無法休眠問題排查

文章目錄前言Autosar CanNm標準中的相關參數CanNmAllNmMessagesKeepAwakePN過濾功能CanNm_ConfirmPnAvailability問題描述問題原因排查解決方案擴展總結前言 Autosar Nm中針對于支持PN功能的收發器&#xff0c;要求PNC停發后允許進入休眠模式&#xff0c;開發過程中遇到PNC停發…

RK3568下的進程間通信:基于UDP的mash網絡節點通信

基于UDP的mash網絡節點通信系統實現: 最近的項目中需要實現一個功能,類似mash網絡的功能,比如 類似下圖中的多個節點之間,相互之間通信, 節點A自身的通信列表中,只有B和C,所以A發出的消息給B和C,依次類推,A發送的消息所有節點都能收到,同理,其他節點比如K節點發送的…

Effective C++ 條款17:以獨立語句將newed對象置入智能指針

Effective C 條款17&#xff1a;以獨立語句將newed對象置入智能指針核心思想&#xff1a;使用智能指針管理動態分配的對象時&#xff0c;必須確保new操作與智能指針構造在同一獨立語句中完成&#xff0c;避免編譯器優化順序導致的內存泄漏。 ?? 1. 跨語句初始化的危險性 資源…

Linux iptables防火墻操作

資料&#xff1a; 網絡運維相關 - iptables 【Main】 https://www.zsythink.net/archives/tag/iptables/ netfilter 在 Linux 內核 TCP/IP協議棧中的位置 【框架】【Aulaxiry】 https://zhuanlan.zhihu.com/p/93630586 1 概念詳解 ● 防火墻概念 ○ 主機防火墻 網絡防火墻 ○…

飛書推送工具-自動化測試發送測試報告一種方式

飛書推送工具 要獲取飛書開發所需的 APP_ID、APP_SECRET 以及用戶的 USER_ID&#xff0c;需通過飛書開放平臺和飛書客戶端的相關設置操作。以下是詳細步驟&#xff1a; 一、獲取 APP_ID 和 APP_SECRET&#xff08;飛書應用憑證&#xff09; APP_ID 和 APP_SECRET 是飛書開放…

從零開始的云計算生活——第三十七天,跬步千里,ansible之playbook

目錄 一.故事劇情 二.Playbook簡介 三.Playbook核心元素(重要) 四.Playbook語法 五.Playbook的運行方式 六.Playbooks中tasks語法使用 1、file 2、lineinfile 3、replace 4、shell 5、debug 6、template/copy 7、fetch 8、unarchive 9、wait_for 10、yum 11、…

AI驅動下的數據新基建:騰訊游戲數據資產治理與湖倉架構革新

在大模型技術迅猛發展的今天&#xff0c;AI 正深度重塑數據基礎設施&#xff0c;推動其向智能化快速演進。如何將 AI 深度融入數據管理&#xff0c;釋放數據的潛在價值、提升運營效率&#xff0c;成為企業在構建 AI 驅動的數據資產管理體系的核心問題。在近期舉辦的“DataFun A…

ubuntu 系統風扇控制軟件 CoolerControl

背景 A6000顯卡的溫度一直都是86度左右&#xff0c;GPU的風扇轉速不夠大。 我首先把 nvidia的驅動更新了&#xff0c;但是發現風扇依然依然保持在較低的轉速。 后面無意間搜到了CoolerControl 這個linux平臺的風扇控制軟件。設置之后&#xff0c;增加了風扇的轉速&#xff0c;…

Oracle 11gR2 Clusterware應知應會

Oracle 11gR2 Clusterware應知應會 關鍵特性 啟動順序 日志路徑 資源狀態 資源管理 關鍵特性 ?? Oracle 11gR2 Clusterware的一些關鍵特性如下: 在安裝運行11gR2的Real Application Clusters數據庫之前需要先安裝11gR2 Clusterware。 GRID home包括Oracle Clusterware和AS…

微信小程序蘋果手機和安卓,怎么做適配

1. 基于 rpx 單位進行布局適配微信小程序采用 rpx 作為尺寸單位&#xff0c;以實現不同設備的布局適配。小程序的屏幕寬度固定為 750rpx&#xff0c;在不同設備上通過動態計算 1rpx 對應的像素值進行適配。例如&#xff0c;在 iPhone 6 中&#xff0c;屏幕寬度為 375px&#xf…

XGBoost三部曲:XGBoost參數詳解

之前已經介紹了XGBoost三部曲:XGBoost原理。本文詳細介紹XGBoost參數,讓大家在使用XGBoost的過程中能得心應手。后續會更新XGBoost實戰,敬請期待。 文章目錄 一、核心概念回顧 二、XGBoost算法參數整體介紹 1 原生接口和Scikit-learn接口的區別 2 參數分類詳解 三、核心Boos…

【python】轉移本地安裝的python包

我們現在需要將某個環境已經安裝的 python 包離線傳遞到另外一個環境&#xff0c;且確保這種安裝行為最終不需要對 PYPI 中央倉庫的有效連接&#xff0c;也能完成。下面給出兩種辦法&#xff1a; docker container 如果你的 python 環境位于某個容器內&#xff0c;那最好的辦法…

TGD第十篇:當神經網絡遇到TGD特征

目錄一、實驗背景二、實驗設置三、實驗結果和分析四、結語TGD 是我們定義的一種新的“變化率表征”&#xff0c;對連續函數而言是一種新的“廣義導數”&#xff0c;對離散序列而言是一種新的差分。TGD 是一個名字&#xff0c;一個代號。在基于 TGD 的圖像邊緣檢測以及視頻邊緣檢…

FreeRTOS源碼分析二:task啟動(RISCV架構)

系列文章目錄 FreeRTOS源碼分析一&#xff1a;task創建&#xff08;RISCV架構&#xff09; 文章目錄系列文章目錄前言vTaskStartScheduler 調度器啟動函數xPortStartScheduler架構特定調度器啟動函數vPortSetupTimerInterrupt啟動 RISCV 定時器中斷xPortStartFirstTask啟動第一…

Python編程基礎與實踐:Python基礎運算符與表達式入門

Python運算符與表達式實戰 學習目標 通過本課程的學習&#xff0c;學員可以掌握Python中算術運算符、比較運算符、邏輯運算符及賦值運算符的使用方法&#xff0c;并能夠構建簡單的表達式來解決實際問題。 相關知識點 Python運算符與表達式 學習內容 1 Python運算符與表達式 1.1…

Git下載全攻略(未更新完)

一、在 Windows 上安裝 Git? ??? 1.1 下載安裝包? 官方版本可在 Git 官方網站下載,打開Redirecting…,下載會自動開始。此安裝包來自名為 Git for Windows 的項目(也稱作 msysGit),它與 Git 本身是相互獨立的項目,更多相關信息可訪問Redirecting Git for Windows…

rocky\centos安裝docker鏡像的命令

1.安裝依賴&#xff1a; sudo yum install -y yum-utils device-mapper-persistent-data lvm22. 選擇倉庫源&#xff1a; sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo阿里源&#xff1a; sudo yum-config-manager --add-r…

扣子,正式擁抱開源!

資料來源&#xff1a;火山引擎-開發者社區 扣子 是新一代 AI Agent 平臺&#xff0c;旗下有四款子產品&#xff1a;「扣子空間」、「扣子開發平臺」、「扣子羅盤」 及 Eino 。 我們始終堅信&#xff0c;AI Agent 的未來屬于每一位開發者和創造者。為了讓前沿的 AI 技術能夠更快…