維基百科機器人
本頁使用了標題或全文手工轉換

維基百科:機器人方針

維基百科,自由的百科全書
跳到導航 跳到搜索

機器人方針適用于所有用以編輯維基百科的計算機程序或腳本,包括全自動、高速運作以及協助編者的工具。本方針亦涵蓋機器人審核小組的設立及相關事宜。該小組代表中文維基百科社群,負責監督和審議本地一切機器人運作事務,以確保機器人符合有關的技術和質量管制要求。

定義[編輯]

  • 機器人是指主要用于協助編者執行大量自動化、高速或機械式、繁瑣的編輯工作的計算機程序或腳本及其所登錄的帳戶。死機械人啟動后,一般能全自動運作,毋須人類指示。
  • 輔助半自動編輯指以低速運行的工具及腳本,能夠協助用戶編輯,但最終決策仍由用戶作出。(詳見下方半自動編輯指引。)
  • 腳本指個人化的腳本(常以JavaScript編寫),它們可以自動運行,也可能只是強化MediaWiki已有的功能。
  • 機器人審核小組 (簡稱“BAG”)由一群獲社群信任用戶組成。該等用戶深諳機器人技術,亦擁有不少編輯經驗,受社群所托去監督及審議本地機器人事務。此小組亦負責界定程序屬于機器人抑或輔助編輯軟件。MediaWiki開發者(開發者)不受本方針所限。

機器人的使用[編輯]

社群對批準機器人進行某一任務設有嚴格要求,因為機器人:

  1. 能夠以遠快于人類速度編輯;
  2. 編輯時較不會受到其他編者檢查;
  3. 如果出錯或用于破壞時,其傷害必然廣而深。

故此,機器人未經許可嚴禁操作。獲得許可以后,亦嚴禁擅自改動經過核準的操作細則。如有違反,操作者及機器人賬戶均可封禁。用戶亦應注意,高速操作半自動編輯工具作不當編輯可被封禁。(見WP:MEATBOT)如有疑問,請向機器人審核小組查詢。

機器人賬號[編輯]

機器人帳號和操作者的帳號應該分開。操作者執行一般的編輯不應該使用機器人賬戶。機器人賬戶的名字應能清楚顯示出它的操作者名字或功能。此外,機器人賬戶用戶名應包含“Bot”或“機器人”等標記,以資分辨用戶及機器人所作編輯。機器人賬戶用戶頁上可加上{{bot}}注明。機器人應使用API的assert參數或類似功能確保其編輯均為登錄以后所作。機器人除外,其他輔助工具毋須使用獨立賬戶,但有些用戶仍會為進行高速編輯而注冊另一個賬號。機器人帳戶應當創建用戶頁,明確標明該帳戶為機器人帳戶,并列出其執行的工作以及操作者的用戶名。如果是全局機器人,可以鏈接至其他寫有工作說明的頁面。

操作者有責任確保機器人運作正常。為此,機器人的用戶頁上必須清楚標明操作者是誰。特別要注意的是,如果機器人出錯,操作者有責任修復其所帶來的損害。維基百科的所有方針均適用于機器人。機器人賬號視為操作者依據傀儡方針設立的分身賬號。

機器人賬戶嚴禁用于非指定用途。另外,操作者亦莫應使用機器人賬戶回應機器人相關提問。操作者如有需要,可將機器人討論頁重定向至其討論頁以便收取通知。

機器人用戶組[編輯]

當機器人審核小組同意后,行政員會將機器人賬戶加入機器人用戶組,這樣機器人會獲得一些MediaWiki系統提供的額外權限,例如允許高速訪問API。機器人所作的編輯默認不會在最近更改中顯示。

在過往,批核過程和獲得機器人權限是分開的;并不是所有獲批的機器人都有權限。這是由于有些機器人的編輯不應從最近更改中隱藏。現在由于用戶可選擇在最近更改顯示機器人編輯,一般獲準的機器人都會獲得權限。但審核小組仍可根據實際情況,決定申請成功的機器人應否獲得權限。

獲批資格[編輯]

機器人操作者必須顯示其機器人以符合下列準則,才能獲得審核小組的許可:

  1. 機器人必須有用
  2. 機器人必須無害
  3. 機器人應該有效運用服務器資源,盡力避免過量占用
  4. 機器人運作前必須獲得共識
  5. 嚴格遵守維基百科各項方針和指引
  6. 在編輯摘要和其他寫給用戶的消息中,能給予用戶幫助,并以合適的語氣寫出

機器人的用戶頁應以{{bot}}指明自己是機器人。以下數據應同時在機器人用戶頁和機器人申請頁面列出:

  • 機器人將進行的工作
  • 機器人是以半自動抑或全自動方式運行
  • 機器人運作時間及頻率(連續、間斷、或只在特定時刻運作)

雖然機器人的運作不會影響維基百科的穩定性,但操作者仍應銘記機器人的編輯速度遠比人類編者為快。操作者不應占用過量服務器資源,并應小心調節編輯速度。如果機器人的運作真的影響到維基百科的運作,系統管理員將通知本地社群。在此情況下,社群必須服從系統管理員的指示。

  • 除非機器人正運行極為緊急或琑屑的任務,否則其編輯速度不應高于正常人類檢查編輯的速度。
  • 測試中的機器人的編輯速度應比已獲授權的機器人慢,以免沖刷最近更改。
  • 機器人的編輯速度應與其任務的緊急程度相一致;非緊急的任務(如重命名頁面分類)的運作速度應較緊急任務(如回退破壞)慢。
  • 操作者有責任按照服務器性能和工作容易出錯的情度,來控制機器人的編輯速度;審核小組會按照每一申請的實際情況決定編輯速度上限。
  • 高速運作的機器人在高峰時間應以較慢的速度運行。
  • 若已得到批準的機器人在執行操作時設定不將自己的編輯標記為機器人編輯,則此類操作會顯示在最近更改中。此時操作者應當降低編輯頻率,避免大量占據最近更改頁面。
  • 機器人的編輯速度也可由數據庫的延遲時間控制;機器人在非繁忙時間的速度可加快,而在高峰時間則較慢。這可通過設置Maxlag參數來達成。

不要制作訪問大量頁面來下載維基百科的機器人,這類程序會被系統管理員阻止。如你有需要下載大量維基百科頁面,請到數據庫下載。如機器人需要在維基百科數據庫上運行,可自行向Wikimedia Labs申請。該申請程序并非本地社群負責。

良好溝通[編輯]

機器人產生的編輯摘要應以友善的語氣為其他編者提供信息。如有疑問,機器人操作者應迅速和友善地解答他們的問題。這是機器人操作者的基本守則。如果操作者不能親自解答問題,他至少要確保有其他編者能夠代他回答那些疑難。

功能要求[編輯]

操作者應根據機器人的工作性質,確保其達到下列有關要求:

  • 在用戶討論頁發放消息的機器人應設有拒絕消息機制(遵從{{Bots}}),并在機器人用戶頁清楚寫明。
  • 編輯大量頁面,但有某些頁面不應編輯的機器人應遵從{{Bots}}的指示。
  • 機器人應避免編輯沖突。
  • 操作者可選擇提供一機制來讓操作者以外的人控制機器人的運作——例如,機器人可在編輯前先讀取某頁面上的內容,再決定行動。該頁面如有需要可以被保護或半保護以防被濫用。操作者如采用此設計,應留意他們仍需對機器人的編輯負上全責。

我們鼓勵機器人的作者發布它的源代碼,但這并非強制要求。

對特定工作項目的額外限制[編輯]

上下文有關的修訂[編輯]

機器人不應以全自動方式進行上下文有關的修改。這類修訂應于人類編輯的監督下進行,以免出現任何錯誤。然而,如果操作者能證明機器人不會出錯(如將所有要修改的項目先試運行一次),或社群同意該任務在不受監督的情況下運行(如回退某人的所有編輯,不論好壞),則屬例外。

上下文有關的修訂包括但不限于以下數種:

  • 更正錯字、文法錯誤、標點錯誤。
  • 添加與上下文有關的模版,如{{weasel word}}。
  • 字符實體引用改成人類編輯時難以識別的Unicode字符。

人物分類[編輯]

不應以機器人調整人物分類。在用機器人添加分類前,應先人工檢查預定的修改,切勿直接匯入維基現存的列表直接修改。

跨語言鏈接[編輯]

維護跨語言鏈接的機器人應停止運行(見維基數據),除非該工作無法在維基數據上進行(如鏈接到某一分段、或處理只用于正文的跨語言鏈接)。

為美觀而作的小修正[編輯]

為美觀而作的小修正(例如AWB general fixes)不應單獨運行。

批量創建條目[編輯]

以自動或半自動方式批量創建條目或頁面分類前,必須先提出申請。“批量”指50項編輯或以上。你應先到互助客棧及相關專題尋求共識。操作者必須確保所創建的條目符合社群的要求。

更簡單的方法是減少創建的條目數量,或先在各屬專題的子頁面創建條目,由其他編輯檢查后,再移動到條目空間。這些方法不用申請機器人,也更容易得到社群的支持。

一般而言,除非社群或機器人審核小組提出豁免,由機器人創建的條目須達致以下標準:

  1. 創建條目時應盡可能確保數據庫為最新版本
  2. 創建頁面列出已創建的條目,方便他人檢查及更新
  3. 條目應已維基化,并有至少一項參考資料。
  4. 頁面不能為孤立頁面
  5. 如條目范疇有相應導航模板,亦應包含其中。
  6. 可行情況下,條目應附有消息框。

審核過程[編輯]

申請機器人權限[編輯]

所有機器人在進行有紀錄的操作前(如編輯頁面、上傳文件、創建賬戶),必須就該項目獲得審核小組的同意。機器人申請可在維基百科:機器人/申請 (BRFA)頁面進行。申請書中應清楚地列明機器人將進行的工作,及提交一切有助社群明白機器人運作的數據,例如社群同意該項目運行的討論。此外,申請者應為優秀的編輯,并對機器人將進行的項目有充份的了解。

在申請期間,一名機器人審核小組(BAG)的成員一般會批出一段測試期,以檢查機器人能夠正常運作。測試期的長短及其他細則由審核小組決定。申請者應密切注視機器人的運作,以便在問題出現時迅速修正。申請者有責任檢查機器人所作的編輯,并修正有關的錯誤。如果測試期間機器人曾出現錯誤,審核小組可能會批出第二階段測試期,直至社群相信機器人能正常運作。

申請期間,其他編輯及審核小組成員可能會對機器人提出意見或疑問,并對機器人在測試期的表現提供反饋。最終決定批準或否決某一項申請取決于機器人能否滿足上列的各項要求,遵守相關的方針和指引﹐及社群的討論。申請者應主動尋求熟識該方面的用戶提供意見。

當社群相信機器人能滿足社群的要求,及沒有技術錯誤后,審核小組會批準申請。如果申請無法獲社群同意運行的共識,審核小組可能會否決申請。有時,申請者會主動撤回申請,或因申請者不再回復而擱置申請。已關閉的申請會被存檔,方便將來參考。如果機器人獲得批準,行政員會授予機器人權限,申請者可按規定開始運作機器人。

機器人審核小組偶然會快速批準或拒絕一項未經測試的機器人審核小組申請。快速批準一般給予由可靠的操作者所申請,明顯不具爭議而只用到簡單技術的機器人、或另一機器人的復制品。同樣地,新用戶如提出極具爭議或先前已被拒絕的項目,可能會被直接拒絕。

毋須事先批準而合規操作[編輯]

機器人操作者如以非常慢的速度編輯少量頁面,并只在測試頁面進行,則毋需申請。事實上,任何用戶都可進行此類測試編輯。除此之外,機器人如只在其擁有者的用戶空間進行編輯,亦毋需申請機器人權限。

如果操作者想改動某已經獲批的機器人,他們的更改必須符合本方針。小規模更改,如修正機器人錯誤或改良機器人的運作,一般是容許的。大規模更改則只可在獲得共識后進行。若希望執行新的任務,操作者必須重新提交申請。操作者可選擇為每一工作創建一個獨立的機器人賬戶。

在未經批準下運行機器人可能會被管理員立刻封禁。

復核申請[編輯]

如欲要求復核申請,用戶可于Wikipedia:機器人/申請#申請復核提出,并陳述自己的觀點。本項適用于重新審議已批準或已拒絕申請,及要求解除現有機器人權限。復核會由審核小組處理。但在社群共識明顯的情況下,申請者應該避免擾亂性的申訴。

申請復核的結果包括:

  • 給予或撤回機器人運行某一項目的許可
  • 給予或移除機器人權限
  • 保留機器人權限,但加上新的運行條件

審核小組只應討論機器人本身,而非討論申請者的行為。

附有管理員權限的機器人[編輯]

附有管理員權限的機器人(簡稱adminbot)亦須經一般程序申請。只有現任管理員方可申請和使用附有管理員權限的機器人。如同其他申請,討論會分為兩部分:

  1. 社群對該任務的同意,即社群是否同意該項目應由機器人自動完成。這部分討論可于申請頁面進行,亦可于互助客棧進行,唯必須得到社群的廣泛認可。
  2. 技術范疇的討論,即機器人能否無錯誤下完成工作。任何用戶都可就技術細節提開討論,但一般而言技術水平較高的用戶會主導討論。社群建議這類機器人開放其源代碼。操作者仍可選擇不公開,但審核小組組員及管理員仍有權要求審閱源代碼。

當社群同意由機器人運行任務是合理及技術上安全后,一名審核小組成員會給予機器人測試期。在這期間,機器人會在沒有管理員權限的狀態下試行(如可行),或在操作者的賬號運行(并標明那些編輯由機器人作出)。當審核小組確信機器人不會出錯后,小組會同時批出機器人權限及管理員權限。負責批核的行政員會作最后把關,檢查申請是否得到社群的一致同意(如社群有否積極討論該申請),并作出最后決定。

如果機器人額外依賴一些不公開的規則來運行(如利用一連串正則表達式來決定某些行動),審核小組組員及管理員有權要求機器人操作者提供該等規則供審閱。操作者修改這些規則,特別是當修改會大幅影響機器人的行為時,應盡量小心。

管理員測試未經批準的附有管理員權限的機器人時(例如在研發階段),應格外小心,在機器人出錯時及時阻止。如機器人失控,管理員須為此負責。

管理員可以在自己賬號使用半自動管理工具,唯同樣需對一切操作承擔責任。

當操作者因故失去管理員權限時,其機器人的管理員權限也應當剝奪。如果操作者希望該機器人繼續運作,可以將其所有權轉交給另一名管理員,并于機器人申請頁面通知社群。

全局機器人[編輯]

全局機器人(Global bots)將視作獲得維基媒體大部分wiki上的bot權限(參看這里),中文維基百科允許使用全局機器人。對于全局機器人,必須符合下列要求:

  • 以此獲權的機器人只能用于維護跨語言鏈接和修復重定向,其他操作需再次申請獲得共識。
  • 機器人必須已經在多個wiki運行,并且有長期的貢獻并受到信任。

申請全局機器人權限請到m:Steward requests/Bot status提出。

處理與機器人有關的問題[編輯]

輕微的錯誤、投訴和改進建議[編輯]

如果你留意到某機器人出錯,或希望投訴/改進某機器人,你應直接到操作者的用戶討論頁留言(或到該機器人的用戶討論頁留言)。操作者有義務回應社群的憂慮和建議,但請在討論時假定善意及保持冷靜。畢竟,程序出錯是十分常見的事,維基百科正是從一個個錯誤中成長。

對機器人的小幅修改一般并不需通知社群,除非該修改和批準時的共識有明顯的沖突。例如,某機器人原來的工作是為某維基專題討論存檔。當它要改變存檔方式時(如將存檔條件由無人回復五天改成十天),無須重新申請。但如果機器人計劃為另一維基專題討論存檔,則應該重新申請,而該申請可能會被快速批準。又例如,本來負責在條目移除過時分類的機器人如想同時移除已刪除文件的鏈接,則需重新申請。

重大出錯及投訴[編輯]

如果機器人造成重大破壞,或操作者沒有回應先前的投訴留言時,社群設有數種機制去阻止機器人繼續破壞。例如,有些機器人會提供停止功能。緊急情況下,也可尋求管理員幫助,或者到Wikipedia:當前的破壞報告,讓管理員封禁機器人以停止其運行。剎停機器人后,應盡快向操作者解釋原因。

如果你覺得某機器人的工作已超出當初社群的同意范圍,請先與操作者討論。如你相信機器人已經失去社群的支持,你可要求重新審視該機器人的申請

疑似由機器人作出的編輯[編輯]

編輯者不應該為了較高的效率或數量而犧牲編輯的質量。在處理爭議時,那些編輯是由機器人、使用半自動工具的編者、或是全手動所做并不重要;重要的是,那些不當的編輯必須停止,否則可能會因此受到封禁。

未提出申請機器人的用戶應該注意自己的編輯頻率,確保其他用戶有時間作出檢查和提出異議,且不會大量占據“最近更改”頁面。當有其他用戶或管理員要求降低編輯頻率時,操作者應當遵守,否則可能會被暫時封禁以防止維基百科受到負面影響。

另注意快速地編輯,特別是當此行為只持續一段短時間時,并不代表就是破壞。

將機器人封禁[編輯]

管理員有權封禁違規的機器人,這些情況包括未經許可下運行、運行許可范圍以外的工作、違反批準時訂定的運行條件、或違反本機器人方針。如果機器人未經登錄或用申請以外的賬號編輯,同樣會被封禁。管理員可用{{Bot block message}}(處理出錯的獲批準機器人)及{{Uw-botblock}}(處理未經許可的機器人)等模版通知操作者。

管理員應對懷疑運作未經許可機器人及出錯的獲批準機器人的賬號處以不限期封禁。

其他與機器人有關的事務[編輯]

機器人審核小組[編輯]

審核小組的組員們應擁有豐富的編寫與運作機器人的經驗,熟悉編程,并且明白審核小組于機器人申請中的角色以及維基百科的機器人方針。有意加入審核小組的用戶可到討論頁申請,向社群闡述自己為何能夠成為小組一員,及介紹自己過往與機器人有關的經歷。七日討論后,一名未有參與討論的行政員將作出決定。

半自動編輯指引[編輯]

“半自動編輯”指使用工具或腳本的協助進行重復性的編輯,但所有編輯仍在人類監督下進行。這類編輯常見于改正錯字、修正消歧義頁、回退破壞、及替小作品分類

通常情況下這類編輯不一定需要提出機器人申請,但若操作者根據常理持有顧慮或可能引起爭議則應該根據上述審核過程提出申請。機器人審核小組會斷定該項目是否需要視作機器人。一般而言,愈是高速、大量、自動化的編輯方式,愈可能被當作機器人處理。

如編輯希望進行大量半自動編輯,他們應先尋求社群共識。他們可以創建一個獨立賬號進行這些編輯,并服從擁有多個賬戶的規定。我們建議操作者標明那些編輯是由半自動工具完成,如在編輯摘要用戶頁用戶討論頁標明。

半自動工具的創造者有權為該工具設立額外的申請使用流程。如果使用該工具需要機器人權限,申請者需同時獲得工具的創造者及審核小組的認可,方可使用該工具。自動維基瀏覽器就是一個例子。與機器人一樣,我們鼓勵,但不強制要求創造者公開工具的源代碼。

請留意以半自動或全自動方式批量創建條目需要先作申請。

腳本[編輯]

大部分腳本的功能僅僅只是將MediaWiki接口增強或個人化,或方便編輯找到一些常用的功能。使用這類腳本一般并不需向審核小組申請。

由多名用戶共享的機器人[編輯]

由多名用戶共享的機器人應遵守以下規定:

  1. 確保操作者能被識別 – 其他用戶能知道機器人作出某一編輯時是由誰控制的,如在編輯摘要標明。
  2. 防止機器人被盜用 – 機器人必須登錄后才能編輯。除此之外,應采取其他措施防止賬號盜用,例如設立強密碼、使用機器人密碼OAuth等。
  3. 對操作者的信任 – 如果機器人可能由申請者以外的人操作,申請者需要向機器人審核小組證明其他操作者有足夠的知識和能力操作該機器人。

活躍度要求[編輯]

如機器人賬號最近一年沒有編輯,其機器人權限可被移除。移除前,應先到操作者的用戶討論頁留言,并給予一星期的通知期。無論操作者是否活躍,如果所持機器人久未活躍,以致權限已經撤銷,則必須重新申請操作許可。機器人審核小組成員如認為妥當,則可以快速批準操作。另外,亦建議操作者就機器人各項已批準任務最后操作日期留有紀錄,以及如某項任務已經久未進行,就算該項任務已經獲得批準,再次運行時仍應留意機器人設置是否與現行編輯環境相配合。操作者如認為某項許可已經再無需要使用,則可于該操作許可留言,并通知任何機器人審核小組成員處理。其他用戶如果發現某機器人某項任務已經沒有運行超過一年,則可按上列程序要求復核

參見[編輯]