በ AI የሚነዱ አፕሊኬሽኖች የሚቋቋሙ የሶፍትዌር አርክቴክቸር መገንባት፡ የመጠን እና ደህንነት ስልቶች | B4N1

በ AI የሚነዱ አፕሊኬሽኖች የሚቋቋሙ የሶፍትዌር አርክቴክቸር መገንባት፡ የመጠን እና ደህንነት ስልቶች

9 months ago · b4n1 Read time: 5 min

መግቢያ

የአርቴፊሻል ኢንተለጀንስ (AI) ከሶፍትዌር አፕሊኬሽኖች ጋር መቀላቀል ችግር ፈቺ፣ ውሳኔ አሰጣጥ እና አውቶሜሽን በምንቀርብበት መንገድ ላይ ለውጥ አድርጓል። ነገር ግን፣ በ AI የሚነዱ አፕሊኬሽኖች ከጊዜ ወደ ጊዜ እየተሻሻሉ ሲሄዱ፣ እንደ ጥልቅ ሀሰተኛ እና በ AI የሚነዳ አውቶሜሽን ላሉ ድንገተኛ አደጋዎች የበለጠ ተጋላጭ ይሆናሉ። በዚህ ጽሑፍ ውስጥ የመለኪያ እና ደህንነትን በማረጋገጥ የኤአይአይ ክፍሎችን በብቃት ሊያዋህዱ የሚችሉ የሶፍትዌር አርክቴክቸር ለመንደፍ የላቁ ቴክኒኮችን እንመረምራለን።

በ AI የሚነዱ መተግበሪያዎች ተግዳሮቶች

በ AI የሚመሩ አፕሊኬሽኖች ከመረጃ በመማር፣ ከአዳዲስ ሁኔታዎች ጋር መላመድ እና በራስ ገዝ ውሳኔዎችን የማድረግ ችሎታቸው ተለይተው ይታወቃሉ። ሆኖም ይህ ማለት የእነሱን AI ክፍሎቻቸውን ለሚያነጣጥሩ ጥቃቶች የበለጠ ተጋላጭ ናቸው ማለት ነው ። ከ AI-የሚነዱ መተግበሪያዎች ጋር የተያያዙ አንዳንድ ተግዳሮቶች የሚከተሉትን ያካትታሉ፡-

  • Deepfakes፡ በ AI የመነጩ የውሸት ቪዲዮዎች፣ የድምጽ ቅጂዎች፣ ወይም ተጠቃሚዎችን ለማታለል ወይም የደህንነት ስርዓቶችን ለማላላት የሚያገለግሉ ምስሎች።
  • በAI-የሚነዳ አውቶሜሽን፡ ጥቃቶችን በራስ ሰር ማድረግ፣ማልዌርን ማሰራጨት ወይም ሚስጥራዊነት ያለው መረጃን ሊያበላሹ የሚችሉ በAI የተጎላበቱ ቦቶች። ** የመረጃ መመረዝ **: AI ሞዴሎች በተመረዘ መረጃ ላይ ሊሰለጥኑ ይችላሉ, ይህም ወደ የተዛባ ወይም የተሳሳተ ውጤት ይመራል.
  • ሞዴል ማውጣት፡ አጥቂዎች ሚስጥራዊነት ያለው መረጃ ከ AI ሞዴሎች ማውጣት ይችላሉ፣ ደህንነታቸውን ይጎዳሉ።

የመጠን አቅም ስልቶች

በ AI ለሚነዱ አፕሊኬሽኖች የሚቋቋሙ የሶፍትዌር አርክቴክቸር ለመገንባት፣ ልኬታማነት ላይ ማተኮር አለብን። መጠነ-ሰፊነት የስርዓት አፈጻጸምን ሳይጎዳ የተጨመረ ጭነትን፣ ትራፊክን ወይም ዳታን የማስተናገድ ችሎታን ያመለክታል። በ AI-የሚነዱ መተግበሪያዎች ውስጥ ልኬትን ለማግኘት አንዳንድ ስልቶች እዚህ አሉ።

1. የማይክሮ ሰርቪስ አርክቴክቸር

የማይክሮ ሰርቪስ አርክቴክቸር አፕሊኬሽኑን እንደ አነስተኛ ገለልተኛ አገልግሎቶች ስብስብ የሚያዋቅር የንድፍ ንድፍ ሲሆን እርስ በርስ የሚግባቡ ኤፒአይዎችን በመጠቀም ነው። ይህ አካሄድ የበለጠ የመተጣጠፍ፣ የመለጠጥ እና የስህተት መቻቻልን ያስችላል።

`` ፓይቶን

በፓይዘን ውስጥ የማይክሮ ሰርቪስ አርክቴክቸር ምሳሌ

ከፍላስክ ማስመጣት Flask, jsonify ከflask_sqlalchemy ማስመጣት SQLAlchemy

መተግበሪያ = ፍላሽ (ስም) app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:///example.db" db = SQLAlchemy(መተግበሪያ)

የመደብ ተጠቃሚ(ዲቢ.ሞዴል)፡- መታወቂያ = db.አምድ(db.Integer፣primary_key=እውነት) ስም = db.አምድ(db.string(100)፣ nullable=ሐሰት)

@app.route("/ተጠቃሚዎች"፣ስልቶች=["GET") def get_users() ተጠቃሚዎች = User.query.all() መልስ jsonify ([{"id": user.id, "name": user.name} ለተጠቃሚዎች ተጠቃሚ])

ስም == "ዋና" ከሆነ፡- app.run(debug=እውነት)


### 2. ኮንቴይነር

ኮንቴይነር አፕሊኬሽኑን እና ጥገኞቹን ወደ አንድ ኮንቴይነር በማሸግ በማንኛውም መድረክ ላይ ሊሰራ የሚችል ዘዴ ነው። ይህ አካሄድ ለበለጠ ተንቀሳቃሽነት፣ መለካት እና ደህንነትን ያስችላል።

``ሂድ
// በ Go ውስጥ የመያዣ መያዣ ምሳሌ
ጥቅል ዋና

አስመጣ (
	"ኤፍኤምቲ"
	"ሎግ"

	"github.com/docker/docker/api/types/container"
	"github.com/docker/docker/api/types/network"
	"github.com/docker/docker/client"
)

func ዋና() {
	cli, err:= client.NewClientWithOpts(client.FromEnv)
	ስህተት ከሆነ!
		log.Fatal(ስህተት)
	}

	containerConfig:= &container.Config{
		ምስል፡ "ምሳሌ/ምስል",
		ኢንቭ፡ []ሕብረቁምፊ{"EXAMPLE_VAR=example"}፣
	}

	networkConfig := &network.NetworkingConfig{
		EndpointsConfig፡ ካርታ[ሕብረቁምፊ]*አውታረ መረብ.የመጨረሻ ነጥብ ቅንብሮች{
			"emple-network": {},
		}
	}

	resp፣ err:= cli.ContainerCreate(context.Background(), containerConfig, networkConfig, nil, nil, ")
	ስህተት ከሆነ!
		log.Fatal(ስህተት)
	}

	fmt.Println(resp.ID)
}

3. አገልጋይ አልባ አርክቴክቸር

አገልጋይ አልባ አርክቴክቸር አፕሊኬሽኑን በፍላጎት የሚከናወኑ ተግባራት ስብስብ አድርጎ የሚያዋቅር የንድፍ ንድፍ ነው፣ አገልጋይ ማቅረብ እና ማስተዳደር ሳያስፈልገው። ይህ አቀራረብ የበለጠ መጠነ-ሰፊነት, ተለዋዋጭነት እና ወጪ ቆጣቢነትን ይፈቅዳል.

`` ዝገት // ዝገት ውስጥ አገልጋይ አልባ የሕንፃ ምሳሌ lambda_runtime ይጠቀሙ::{አውድ፣ስህተት}; serde_json ይጠቀሙ :: json;

#[ቶኪዮ::ዋና] async fn ዋና() -> ውጤት<()፣ ስህተት> { let func = lambda_runtime :: አሂድ!(handler); func (አውድ :: ነባሪ ()) ይጠብቁ?; እሺ(()) }

async fn handler(_ክስተት፡ lambda_runtime ::ክስተት፣ _አውድ፡ አውድ) -> ውጤት<lambda_runtime ::ውጤት፣ስህተት> { ውጤት = json!({ "የሁኔታ ኮድ": 200, "አካል": "ሰላም ከላምዳ!", }); እሺ(lambda_runtime ::ውጤት::ከ(ውጤት)) }


## የደህንነት ስልቶች

በ AI ለሚነዱ አፕሊኬሽኖች የሚቋቋሙ የሶፍትዌር አርክቴክቸር ለመገንባት፣ እኛ ደግሞ በደህንነት ላይ ማተኮር አለብን። ደህንነት ማለት ስርዓቱ ካልተፈቀደ መዳረሻ፣ የመረጃ ጥሰቶች ወይም ሌሎች ተንኮል አዘል እንቅስቃሴዎች እራሱን የመከላከል አቅምን ያመለክታል። በ AI-የሚነዱ መተግበሪያዎች ውስጥ ደህንነትን ለማግኘት አንዳንድ ስልቶች እዚህ አሉ።

### 1. የውሂብ ምስጠራ

የውሂብ ምስጠራ ያልተፈቀደ መዳረሻን ለመከላከል መረጃን የሚያጭበረብር ዘዴ ነው። ይህ አካሄድ የበለጠ ደህንነትን፣ ሚስጥራዊነትን እና ታማኝነትን ያስችላል።

`` ፓይቶን
በ Python ውስጥ # የውሂብ ምስጠራ ምሳሌ
ከክሪፕቶግራፊ.fernet import Fernet

ቁልፍ = Fernet.generate_key()
cipher_suite = Fernet(ቁልፍ)

ዳታ = b "ሄሎ, ዓለም!"
ኢንክሪፕትድ_ዳታ = cipher_suite.encrypt(ውሂብ)
ማተም(የተመሰጠረ_ውሂብ)

ዲክሪፕትድ_ዳታ = cipher_suite.decrypt(የተመሰጠረ_ውሂብ)
ማተም(የተመሰጠረ_ውሂብ)

2. የመዳረሻ መቆጣጠሪያ

የመዳረሻ መቆጣጠሪያ ማን ሚስጥራዊነት ያለው መረጃ መድረስ እንደሚችል ወይም የተወሰኑ እርምጃዎችን ማከናወን እንደሚችል የሚቆጣጠር ዘዴ ነው። ይህ አካሄድ የበለጠ ደህንነትን፣ ተጠያቂነትን እና ተገዢነትን ይፈቅዳል።

``ሂድ // በ Go ውስጥ የመዳረሻ መቆጣጠሪያ ምሳሌ ጥቅል ዋና

አስመጣ ( "ኤፍኤምቲ" "ሎግ"

"github.com/dgrijalva/jwt-go"

)

func ዋና() { ማስመሰያ፡= jwt.NewWithClaims(jwt.SigningMethodHS256፣ jwt.MapClaims{ "username": "ምሳሌ", "role": "አስተዳዳሪ", })

tokenString፣ err:= token.SignedString([]ባይት("ሚስጥራዊ"))
ስህተት ከሆነ!
	log.Fatal(ስህተት)
}

fmt.Println(tokenString)

}


### 3. Anomaly ማወቅ

Anomaly ማወቂያ በመረጃ ውስጥ ያልተለመዱ ቅጦችን ወይም ባህሪን የሚለይ ዘዴ ነው። ይህ አካሄድ ለበለጠ ደህንነት፣ ፈልጎ ማግኘት እና ምላሽ ለመስጠት ያስችላል።

`` ዝገት
// ዝገት ውስጥ anomaly ማወቂያ ምሳሌ
ራንድ ይጠቀሙ :: Rng;
std ይጠቀሙ :: ስብስቦች :: HashMap;

fn ዋና() {
    let mut rng = ራንድ :: ክር_rng ();
    ዳታ ይሁን = HashMap :: አዲስ();

    ለ _ በ 0.100 {
        ዋጋ ይሁን = rng.gen_range (0..100);
        data.insert (እሴት, እሴት);
    }

    mut anomalies = Vec :: አዲስ ();

    ለ (ቁልፍ፣ እሴት) በ data.iter() {
        ከሆነ *ቁልፍ > 50 እና እና * እሴት > 50 {
            anomalies.push (key.clone ());
        }
    }

    println!("{:?}", anomalies);
}

እይታ

በዚህ ጽሑፍ ውስጥ የተብራራውን የመለጠጥ እና የደህንነት ስልቶችን ለማሳየት Chart.jsን በመጠቀም የማሳያ ምሳሌ እዚህ አለ።

``json { "አይነት": "ባር", "ውሂብ": { "labels": ["ማይክሮ ሰርቪስ", "መያዣ", "ሰርቨር አልባ"], "መረጃዎች": [ { "label": "መጠኑ", "ውሂብ": [10, 20, 30], "የጀርባ ቀለም": [ "rgba (255, 99, 132, 0.2)", "rgba (54, 162, 235, 0.2)", "rgba (255, 206, 86, 0.2)" ]፣ "የድንበር ቀለም": "rgba (255, 99, 132, 1)", "rgba(54, 162, 235, 1)", "rgba (255, 206, 86, 1)" ]፣ "የድንበር ስፋት": [1, 1, 1] } { "label": "ደህንነት", "ውሂብ": [20, 30, 40], "የጀርባ ቀለም": [ "rgba (255, 99, 132, 0.2)", "rgba (54, 162, 235, 0.2)", "rgba (255, 206, 86, 0.2)" ]፣ "የድንበር ቀለም": "rgba (255, 99, 132, 1)", "rgba(54, 162, 235, 1)", "rgba (255, 206, 86, 1)" ]፣ "የድንበር ስፋት": [1, 1, 1] } ] } "አማራጮች": { "ሚዛኖች": { "yAxes": [ { "መዥገሮች": { "beginAtZero"፡ እውነት } } ] } } }


ይህ የእይታ እይታ የእያንዳንዱን ስትራቴጂ መጠነ-ሰፊነት እና የደህንነት ጥቅሞችን ያሳያል፣በማይክሮ ሰርቪስ አገልግሎት ከፍተኛውን መጠን እና አገልጋይ አልባ ከፍተኛውን ደህንነት ያሳያል።

## መደምደሚያ

በ AI ለሚነዱ አፕሊኬሽኖች የሚቋቋሙ የሶፍትዌር አርክቴክቸር መገንባት የመለኪያ እና የደህንነት ስልቶችን ጥምር ይጠይቃል። በማይክሮ ሰርቪስ አርክቴክቸር፣ ኮንቴይነላይዜሽን እና አገልጋይ በሌለው አርክቴክቸር ላይ በማተኮር የበለጠ ልኬታማነትን እና ተለዋዋጭነትን ማግኘት እንችላለን። በመረጃ ምስጠራ፣ የመዳረሻ ቁጥጥር እና ያልተለመደ ማወቂያ ላይ በማተኮር የበለጠ ደህንነትን እና ጥበቃን ማግኘት እንችላለን። እነዚህን ስልቶች በማጣመር፣ ሁለቱም ሊለኩ የሚችሉ እና ደህንነታቸው የተጠበቀ የሶፍትዌር አርክቴክቸር መገንባት እንችላለን፣ እና የመተግበሪያዎቻችንን ደህንነት እና ታማኝነት እያረጋገጥን የኤአይአይ ክፍሎችን በብቃት ማዋሃድ እንችላለን።

## ዋቢዎች

* [1] "ማይክሮ ሰርቪስ አርክቴክቸር" በማርቲን ፎለር
* [2] "ኮንቴይነር" በዶከር
* [3] “አገልጋይ አልባ አርክቴክቸር” በAWS
* [4] "የውሂብ ምስጠራ" በክሪፕቶግራፊ
* [5] "የመዳረሻ መቆጣጠሪያ" በJWT
* [6] "Anomaly Detection" በማሽን መማር

ማሳሰቢያ፡ ይህ ጽሁፍ ለትምህርታዊ ዓላማዎች ብቻ ነው እና በ AI ለሚመሩ አፕሊኬሽኖች ጠንካራ የሶፍትዌር አርክቴክቸር ለመገንባት እንደ አጠቃላይ መመሪያ ተደርጎ ሊወሰድ አይገባም።

Have Questions?

Let's Talk

Contact me on LinkedIn